Zum Hauptinhalt springen

TestFlight

Verwalten Sie TestFlight-Betatests von Anfang bis Ende: Beta-Gruppen, Tester, Build-Verteilung, What-to-Test-Notizen, Beta-Review und Tester-Feedback.

Build-bezogene Befehle verwenden standardmäßig den neuesten, nicht abgelaufenen Build. Mit --build <number> wählen Sie einen bestimmten Build aus; wenn eine App mit Universalkauf dieselbe Build-Nummer auf mehreren Plattformen verwendet, sorgt --platform für Eindeutigkeit.

Beta-Gruppen

ascelerate testflight groups list <bundle-id>
ascelerate testflight groups info <bundle-id> "External Testers"
ascelerate testflight groups create <bundle-id> --name "Friends" --public-link --public-link-limit 100
ascelerate testflight groups update <bundle-id> "Friends" --public-link false
ascelerate testflight groups delete <bundle-id> "Friends"

groups list zeigt für jede Gruppe den Typ, den öffentlichen Link, das Tester-Limit und die Feedback-Einstellung. groups info ergänzt die Tester und die zugewiesenen Builds der Gruppe. create akzeptiert --internal für eine interne Gruppe (Teammitglieder) und --all-builds, um ihr automatischen Zugriff auf alle Builds zu geben; externe Gruppen können einen öffentlichen Einladungslink mit optionalem Tester-Limit aktivieren.

Gruppennamen werden ohne Beachtung der Groß-/Kleinschreibung abgeglichen. Lassen Sie den Namen weg, um aus einer interaktiven Liste zu wählen.

Builds zuweisen

# Standardmäßig wird der neueste, nicht abgelaufene Build verwendet
ascelerate testflight groups add-build <bundle-id> "Friends"
ascelerate testflight groups add-build <bundle-id> "Friends" --build 123
ascelerate testflight groups remove-build <bundle-id> "Friends" --build 123

Aufnahmekriterien

Gruppen mit öffentlichem Link können den Beitritt nach Gerätefamilie und Betriebssystemversion einschränken:

# Aktuelle Kriterien anzeigen, samt der von Apple akzeptierten Geräte-/OS-Optionen
ascelerate testflight groups criteria view <bundle-id> "Friends" --options

# Kriterien ersetzen: FAMILY[:MIN[:MAX]] mit einschließenden Grenzen
ascelerate testflight groups criteria set <bundle-id> "Friends" --filter IPHONE:18.0 --filter IPAD:17.0:26

# Alle Kriterien entfernen
ascelerate testflight groups criteria clear <bundle-id> "Friends"

Gültige Gerätefamilien: IPHONE, IPAD, MAC, APPLE_TV, APPLE_WATCH, VISION.

Tester

ascelerate testflight testers list <bundle-id>
ascelerate testflight testers list <bundle-id> --group "Friends"

# Das Hinzufügen versendet bei externen Gruppen die TestFlight-Einladung
ascelerate testflight testers add <bundle-id> --email tester@example.com --first-name Jane --group "Friends"

# Aus einer Gruppe oder aus der gesamten App entfernen
ascelerate testflight testers remove <bundle-id> tester@example.com --group "Friends"
ascelerate testflight testers remove <bundle-id> tester@example.com

# Einladungs-E-Mail erneut senden
ascelerate testflight testers invite <bundle-id> tester@example.com

--group akzeptiert bei add und import mehrere durch Kommas getrennte Gruppennamen.

Massenimport

ascelerate testflight testers import <bundle-id> --file testers.csv --group "Friends"

Die Datei enthält einen Tester pro Zeile: email[,Vorname[,Nachname]]. Leere Zeilen, Zeilen mit # am Anfang und eine führende Kopfzeile werden übersprungen — das CSV-Format, das die Weboberfläche von App Store Connect exportiert, funktioniert unverändert. Fehlgeschlagene Zeilen werden am Ende gemeldet, ohne den Rest des Imports abzubrechen.

Builds und Verteilung

# Alle Builds mit ihren TestFlight-Status
ascelerate testflight builds <bundle-id>
ascelerate testflight builds <bundle-id> --platform ios --limit 50

# Pre-Release-Versionen
ascelerate testflight versions <bundle-id>

# Vollständiger Status eines Builds
ascelerate testflight status <bundle-id> --build 123

builds listet für jeden Build den Verarbeitungsstatus, die internen und externen Teststatus sowie das Ablaufdatum auf. status ergänzt für einen einzelnen Build die Auto-Notify-Einstellung und den Beta-Review-Status. Beide akzeptieren --json für maschinenlesbare Ausgabe (Konventionen).

# Einen Build ablaufen lassen; Tester können ihn nicht mehr installieren
ascelerate testflight expire <bundle-id> --build 123

# Tester benachrichtigen, dass ein Build verfügbar ist
ascelerate testflight notify <bundle-id>

# Automatische Benachrichtigung für einen Build ein- oder ausschalten
ascelerate testflight auto-notify <bundle-id> --enabled false

What to Test

Testnotizen werden pro Build und pro Sprache gespeichert:

ascelerate testflight whats-new view <bundle-id>

# Eine Sprache oder alle vorhandenen Sprachen, wenn --locale weggelassen wird
ascelerate testflight whats-new set <bundle-id> --text "Testen Sie die neuen Kartenfilter" --locale de-DE
ascelerate testflight whats-new set <bundle-id> --text "Testen Sie die neuen Kartenfilter"

# Export und Import über JSON
ascelerate testflight whats-new export <bundle-id> --output notes.json
ascelerate testflight whats-new import <bundle-id> --file notes.json

Das JSON-Format entspricht den übrigen Lokalisierungsbefehlen:

{
"en-US": { "whatsNew": "Try the new map filters" },
"de-DE": { "whatsNew": "Testen Sie die neuen Kartenfilter" }
}

Beta-Review

Externe Tests erfordern für jeden Build ein Beta-Review:

ascelerate testflight submit <bundle-id> --build 123
ascelerate testflight status <bundle-id> --build 123

Beta-App-Informationen und Review-Details gelten auf App-Ebene:

# Beta-App-Beschreibung und Feedback-E-Mail, pro Sprache
ascelerate testflight app-info view <bundle-id>
ascelerate testflight app-info update <bundle-id> --locale de-DE --feedback-email ich@example.com
ascelerate testflight app-info export <bundle-id> --output beta-app-info.json
ascelerate testflight app-info import <bundle-id> --file beta-app-info.json

# Kontakt und Demo-Konto für das Beta-Review-Team
ascelerate testflight review-info <bundle-id>
ascelerate testflight review-info <bundle-id> --demo-account-name demo@example.com --demo-account-required true

# Eigene Beta-Lizenzvereinbarung (--text "" stellt Apples Standardvereinbarung wieder her)
ascelerate testflight eula <bundle-id>
ascelerate testflight eula <bundle-id> --file eula.txt

Tester-Feedback

Absturz- und Screenshot-Feedback, das Tester über TestFlight einreichen:

ascelerate testflight feedback crashes list <bundle-id>
ascelerate testflight feedback crashes info <submission-id>
ascelerate testflight feedback crashes log <submission-id> --output crash.log
ascelerate testflight feedback crashes delete <submission-id>

ascelerate testflight feedback screenshots list <bundle-id>
ascelerate testflight feedback screenshots info <submission-id>
ascelerate testflight feedback screenshots download <bundle-id> [submission-id] --output feedback.zip
ascelerate testflight feedback screenshots delete <submission-id>

list akzeptiert die Filter --build und --platform. info zeigt den vollständigen Gerätekontext — Modell, Betriebssystemversion, Sprache, Verbindungstyp, Akkustand, freien Speicherplatz und den Kommentar des Testers. log gibt das Absturzprotokoll aus oder speichert es mit --output. download verpackt die Screenshots und den Kommentar einer Einreichung in ein Zip-Archiv; ohne Einreichungs-ID wählen Sie aus einer seitenweisen Liste der Einreichungen der App. Screenshot-URLs laufen nach wenigen Tagen ab — laden Sie Feedback, das Sie behalten möchten, rechtzeitig herunter.