In diesem Dokument werden Best Practices für die Verwendung von Firebase App Distribution vorgestellt, mit denen Sie Ihre Android-Testworkflows für Vorabversionen in einer CI/CD-Umgebung nachhaltig und wiederholbar gestalten können. Zu den Lösungen gehören Gradle und fastlane. Für noch mehr Flexibilität bieten wir aber auch Lösungen an, die über die Firebase Console, die Firebase CLI und die öffentliche Firebase App Distribution API verfügbar sind. Außerdem beschreiben wir die Limits für Releases und Tester, damit Sie im Voraus planen können, um eine optimale Nutzung zu gewährleisten.
Wenn Sie auch Apple-Plattformen verwenden, finden Sie weitere Informationen unter Best Practices für die Verteilung von Apple-Apps an Qualitätssicherungstester mit CI/CD und fastlane.
Hinweis
Bevor Sie die Best Practices in diesem Dokument implementieren, müssen Sie App Distribution in der Firebase Console für jede App aktivieren. Wenn Sie App Distribution nicht aktiviert haben, erhalten Sie einen 404-Fehler.
So aktivieren Sie App Distribution:
- Öffnen Sie in der Firebase Console die App Distribution Seite.
- Wählen Sie Ihre Android-App aus.
- Klicken Sie auf Jetzt starten.
Workflow für Tests von Vorabversionen mit einer CI/CD-Pipeline automatisieren
Wenn Sie das Erstellen und Freigeben von Apps für Ihre Tester automatisieren möchten und Sie CI/CD verwenden, empfehlen wir Ihnen, fastlane oder Gradle zu verwenden. Eine weitere Option ist die Verwendung der Firebase CLI, mit der Sie auf eine Vielzahl von Firebase-Produkten zugreifen können.
fastlane verwenden
Sie können App Distribution in Ihre CI/CD-Pipeline einbinden, indem Sie fastlane verwenden. Dabei handelt es sich um ein Open-Source- Tool, mit dem das Erstellen und Freigeben von iOS- und Android-Apps automatisiert wird. Wenn Sie Ihre neuesten Releases automatisch erstellen und an Tester verteilen, haben diese immer die aktuelle Testversion Ihrer App.
Informationen zum Einbinden von App Distribution in fastlane finden Sie unter Android-Apps mit fastlane an Tester verteilen.
Gradle verwenden
Mit Gradle können Sie App Distribution in Ihren Android-Build-Prozess einbinden, indem Sie das
App Distribution Gradle-Plug-in verwenden. Mit dem Plug-in können Sie Tester und Release-Hinweise in der Datei build.gradle Ihrer App angeben. So können Sie Verteilungen für verschiedene Build-Typen und Varianten Ihrer App konfigurieren.
Informationen zum Einbinden von App Distribution in Gradle finden Sie unter Android-Apps mit Gradle an Tester verteilen.
Firebase CLI verwenden
Mit den Firebase CLI-Tools, die App Distribution bietet, können Sie Builds programmatisch an Tester verteilen. Sie können Tester und Release-Hinweise für einen Build angeben.
Verteilen Sie Ihren neuesten Android-Build, indem Sie die Firebase-App-ID der App angeben und optional einen Release-Hinweis und eine Datei mit den E-Mail-Adressen der Tester hinzufügen:
firebase appdistribution:distribute test.aab \
--app 1:1234567890:android:0a1b2c3d4e5f67890 \
--release-notes "Bug fixes and improvements" --testers-file testers.txt
Weitere Informationen zur Verwendung der Firebase CLI zum Automatisieren Ihrer Builds finden Sie unter Android-Apps mit der Firebase CLI an Tester verteilen.
Mit Dienstkonto authentifizieren
Verwenden Sie das App Distribution fastlane-Plug-in, das Gradle-Plug-in, oder die Firebase CLI mit Dienstkonten. Ein Dienstkonto ist eine Art von Google-Konto, das Anwendungen (im Gegensatz zu Nutzern) repräsentiert. Ihr CI-System kann Dienstkonten verwenden, um Ihre App Distribution Arbeitslasten auszuführen. Weitere Informationen finden Sie unter Mit Dienstkonto authentifizieren.
Wenn Sie die Workload Identity-Föderation verwenden, können Sie anstelle eines Dienstkontoschlüssels eine Konfigurationsdatei für Anmeldedaten erstellen und verwenden.
Limits für Releases beachten
App Distribution unterstützt maximal 1.000 Releases pro App. Das bedeutet,dass wenn Sie das Limit für Releases überschreiten, App Distribution automatisch die ältesten Releases über dem Limit löscht. Informationen zum Verwalten von Limits für Releases finden Sie unter Wie lange sind App-Releases verfügbar?
Dieselbe Gruppe von Testern zu mehreren Releases hinzufügen
Wenn Sie Ihren Releases eine große Anzahl von Testern hinzufügen möchten, verwenden Sie die Funktion zur Bulk-Verwaltung von Testern in App Distribution.
Wir empfehlen, Gruppen zu verwenden, um dieselben Tester zu mehreren Releases hinzuzufügen. Eine Gruppe fungiert als Zugriffssteuerungsliste. Wenn Sie einen Tester aus einer Gruppe entfernen, verliert er den Zugriff auf alle Releases, die an diese Gruppe verteilt wurden. Weitere Informationen finden Sie unter Tester zu einer Gruppe hinzufügen und aus einer Gruppe entfernen.
Wenn Sie viele Tester verwalten müssen, können Sie Tester im Bulk hinzufügen und löschen mit der Firebase Console. Wenn Sie das Hinzufügen und Entfernen von Testern automatisieren möchten, verwenden Sie die Firebase CLI, fastlane, Gradle, oder die öffentliche Firebase App Distribution API.
Limits für Tester beachten
App Distribution begrenzt die Anzahl der Tester, die Sie einem Firebase-Projekt oder einer App Distribution-Gruppe hinzufügen können. Wenn Sie diese Limits überschreiten, können Sie Ihre App nicht an weitere Tester verteilen. Weitere Informationen zu Limits für Tester finden Sie unter Gibt es Limits für das Hinzufügen von Testern zu meiner App?
Potenzielle Tester können sich selbst für Tests registrieren
Um die Verteilung Ihrer App an mehr Tester zu erleichtern, empfehlen wir Ihnen, Einladungslinks zu verwenden. Ein Einladungslink ist eine eindeutige URL, über die Tester ihre E-Mail-Adressen eingeben können, um sich für das Testen einer App zu registrieren. Wenn Sie Nutzern die Möglichkeit geben, sich selbst zu Ihrer Liste von App-Testern hinzuzufügen, können Sie Ihre interne Testbasis ganz einfach vergrößern.
Anwendungsfälle für Einladungslinks sind beispielsweise Dogfood-Programme für Unternehmen, Organisationen mit großen Qualitätssicherungsteams und Entwicklergruppen, die es einzelnen Kunden ermöglichen möchten, den Testerzugriff zu steuern.
Wir empfehlen, einen Einladungslink für eine Gruppe zu erstellen. Alle Tester, die sich über den Einladungslink registrieren, werden automatisch zu nachfolgenden Releases hinzugefügt.
Weitere Informationen finden Sie unter Einladungslinks erstellen und Tester zu einer Gruppe hinzufügen und aus einer Gruppe entfernen.
Sicherstellen, dass Tester die gewünschte Version testen
Wenn eine neue Version hochgeladen wird, werden Ihre Tester per E-Mail benachrichtigt. Zusätzlich zu dieser Benachrichtigung können Sie die folgenden Funktionen verwenden, um sicherzustellen, dass Ihre Tester die gewünschte App-Version testen: Release-Links und In-App-Benachrichtigungen.
- Release-Links:Verwenden Sie diese Funktion, wenn Sie eine bestimmte Version für Tester freigeben möchten. Informationen zur Verwendung von Release-Links finden Sie unter Android-Apps mit der Firebase Console an Tester verteilen. Diese Links sind auch mit unseren Firebase, fastlane und Gradle Befehlszeilentools (CLI) zur Verwendung mit Ihren Tools zur Build-Automatisierung verfügbar.
- In-App-Benachrichtigungen: Verwenden Sie diese Benachrichtigungen, wenn Sie sicherstellen möchten, dass Ihre Tester die neueste Version Ihrer App testen. Wenn Sie das Firebase App Distribution Android SDK einbinden, können Sie Ihren Testern Benachrichtigungen direkt in der App anzeigen, wenn neue Builds Ihrer App verfügbar sind. Informationen zum Hinzufügen von In-App-Benachrichtigungen finden Sie unter Tester über neue Builds benachrichtigen.
Zugriff für Tester, die das Unternehmen verlassen, automatisch entfernen
Wenn Ihr interner CI/CD-Testablauf eingerichtet ist, müssen Sie dafür sorgen, dass Personen, die das Unternehmen verlassen, keinen Zugriff mehr auf Ihre internen Builds haben. Um den Testerzugriff auf Builds zu verwalten, bietet App Distribution die folgenden Optionen:
- fastlane:Verwenden Sie Ihre Fastfile-Datei oder führen Sie fastlane-Aktionen direkt aus. Weitere Informationen finden Sie unter Android-Apps mit fastlane an Tester verteilen.
- Firebase CLI: Verwenden Sie die
firebase appdistribution:testers:removeAktion. Weitere Informationen finden Sie unter Android-Apps mit der Firebase CLI an Tester verteilen. - Gradle: Wenn Sie Gradle verwenden, um Tester zu entfernen, übergeben Sie
appDistributionRemoveTestersmit den Argumentenund--PROJECT_NUMBER in Ihrer Datei--EMAILS build.gradle. Weitere Informationen finden Sie unter Android-Apps mit Gradle an Tester verteilen. - Öffentliche Firebase App Distribution API:
Verwenden Sie den Endpunkt
testers.batchRemove.