Ce document présente les bonnes pratiques d'utilisation de Firebase App Distribution pour rendre vos workflows de tests préliminaires Android durables et reproductibles dans un environnement CI/CD. Les solutions incluent Gradle et fastlane, mais pour vous offrir encore plus de flexibilité, nous incluons également des solutions disponibles via la console Firebase, la CLI Firebase et l'API Firebase publique App Distribution. Nous décrivons également les limites de version et de testeur afin que vous puissiez planifier à l'avance une expérience optimale.
Si vous utilisez également des plates-formes Apple, consultez Bonnes pratiques pour distribuer des applications Apple aux testeurs QA à l'aide de CI/CD et de fastlane.
Avant de commencer
Avant d'implémenter les bonnes pratiques décrites dans ce document, assurez-vous d'activer App Distribution dans la console Firebase pour chaque application. Si vous n'avez pas activé App Distribution, vous recevrez une erreur 404.
Pour activer App Distribution :
- Ouvrez la page App Distribution dans la console Firebase.
- Sélectionnez votre application Android.
- Cliquez sur Commencer.
Étant donné que les Android App Bundles (AAB) deviennent le format de package Android le plus courant, nous vous recommandons de configurer la possibilité de distribuer des AAB à vos testeurs en créant un lien vers Google Play.
Automatiser votre workflow de test des versions préliminaires à l'aide d'un pipeline CI/CD
Si vous souhaitez automatiser la création et la publication d'applications pour vos testeurs et que vous utilisez la CI/CD, nous vous recommandons d'utiliser fastlane ou Gradle. Vous pouvez également utiliser la CLI Firebase, qui vous permet d'accéder à un large éventail de produits Firebase.
Utiliser fastlane
Intégrez App Distribution à votre pipeline CI/CD à l'aide de fastlane, un outil Open Source qui automatise la création et la publication d'applications iOS et Android. En compilant et en distribuant automatiquement vos dernières versions aux testeurs, vous vous assurez qu'ils disposent toujours de la version de test la plus récente de votre application.
Pour savoir comment intégrer App Distribution à fastlane, consultez Distribuer des applications Android aux testeurs à l'aide de fastlane.
Utiliser Gradle
Utilisez Gradle pour intégrer App Distribution à votre processus de compilation Android à l'aide du plug-in Gradle App Distribution. Le plug-in vous permet de spécifier vos testeurs et vos notes de version dans le fichier build.gradle
de votre application. Vous pouvez ainsi configurer des distributions pour différents types de compilation et variantes de votre application.
Pour découvrir comment intégrer App Distribution à Gradle, consultez Distribuer des applications Android aux testeurs à l'aide de Gradle.
Utiliser la CLI Firebase
Utilisez les outils CLI Firebase fournis par App Distribution pour distribuer des versions aux testeurs de manière programmatique. Vous pouvez spécifier des testeurs et des notes de version pour une compilation.
Distribuez votre dernière version Android en spécifiant l'ID d'application Firebase, en ajoutant éventuellement une note de version et un fichier contenant les adresses e-mail des testeurs :
firebase appdistribution:distribute test.aab \
--app 1:1234567890:android:0a1b2c3d4e5f67890 \
--release-notes "Bug fixes and improvements" --testers-file testers.txt
Pour en savoir plus sur l'utilisation de la CLI Firebase pour automatiser vos compilations, consultez Distribuer des applications Android aux testeurs à l'aide de la CLI Firebase.
Utiliser les identifiants de service pour l'authentification
Utilisez le plug-in fastlane App Distribution, le plug-in Gradle ou la CLI Firebase avec des comptes de service. Un compte de service est un type de compte Google qui représente des applications (et non des utilisateurs). Votre système d'intégration continue peut utiliser des comptes de service pour exécuter vos charges de travail App Distribution. Pour en savoir plus, consultez S'authentifier avec un compte de service.
Si vous utilisez la fédération d'identité de charge de travail, vous pouvez générer et utiliser un fichier de configuration des identifiants au lieu d'une clé de compte de service.
Tenir compte des limites de publication
App Distribution accepte un maximum de 1 000 versions par application. Cela signifie que lorsque vous dépassez cette limite, App Distribution supprime automatiquement les versions les plus anciennes au-delà de la limite. Pour savoir comment gérer les limites de publication, consultez Combien de temps les versions d'application sont-elles disponibles ?
Ajouter le même ensemble de testeurs à plusieurs versions
Si vous souhaitez ajouter un grand nombre de testeurs à vos versions, utilisez la fonctionnalité de gestion groupée des testeurs de App Distribution.
Nous vous recommandons d'utiliser des groupes pour ajouter les mêmes testeurs à plusieurs versions. Un groupe sert de liste de contrôle d'accès. Lorsque vous supprimez un testeur d'un groupe, il perd l'accès à toutes les versions distribuées à ce groupe. Pour en savoir plus, consultez Ajouter et supprimer des testeurs dans un groupe.
Si vous avez de nombreux testeurs à gérer, vous pouvez ajouter et supprimer des testeurs de manière groupée à l'aide de la console Firebase. Pour automatiser l'ajout et la suppression de testeurs, utilisez la CLI Firebase, fastlane, Gradle ou l'API publique Firebase App Distribution.
N'oubliez pas les limites pour les testeurs
App Distribution limite le nombre de testeurs que vous pouvez ajouter à un projet Firebase ou à un groupe App Distribution. Lorsque vous dépassez ces limites, vous ne pouvez plus distribuer votre application à d'autres testeurs. Pour en savoir plus sur les limites de testeurs, consultez Existe-t-il des limites pour l'ajout de testeurs à mon application ?
Permettre aux testeurs potentiels de s'inscrire eux-mêmes aux tests
Pour faciliter la distribution de votre application à davantage de testeurs, nous vous recommandons d'utiliser des liens d'invitation. Un lien d'invitation est une URL unique qui permet aux testeurs de saisir leur adresse e-mail pour s'inscrire et tester une application. Permettre aux utilisateurs de s'ajouter eux-mêmes à votre liste de testeurs d'applications est un moyen simple d'élargir votre base de testeurs internes.
Les liens d'invitation sont utiles pour les programmes de test interne des entreprises, les organisations disposant de grandes équipes de contrôle qualité et les groupes de développeurs qui souhaitent que les clients individuels puissent contrôler l'accès des testeurs.
Nous vous recommandons de créer un lien d'invitation pour un groupe. Tout testeur qui s'inscrit à l'aide du lien d'invitation est automatiquement ajouté aux versions ultérieures.
Pour en savoir plus, consultez Créer des liens d'invitation et Ajouter et supprimer des testeurs dans un groupe.
Assurez-vous que les testeurs testent la version qui vous intéresse.
Lorsqu'une nouvelle version est importée, vos testeurs en sont informés par e-mail. Pour compléter cette notification, vous pouvez utiliser les fonctionnalités suivantes (liens de version et alertes dans l'application) afin de vous assurer que vos testeurs testent la version spécifique de l'application qui vous intéresse :
- Liens vers les versions : utilisez cette fonctionnalité lorsque vous souhaitez partager une version spécifique avec des testeurs. Pour savoir comment utiliser les liens de version, consultez Distribuer des applications Android aux testeurs à l'aide de la console Firebase. Ces liens sont également disponibles avec nos outils de ligne de commande (CLI) Firebase, fastlane et Gradle pour une utilisation avec vos outils d'automatisation de compilation.
- Alertes dans l'application : utilisez ces alertes lorsque vous souhaitez vous assurer que vos testeurs testent la dernière version de votre application. En intégrant le SDK Android App Distribution de Firebase, vous pouvez afficher des alertes directement dans l'application pour vos testeurs lorsque de nouvelles versions de votre application sont disponibles. Pour savoir comment ajouter des alertes dans l'application, consultez Informer les testeurs des nouvelles versions.
Supprimer automatiquement l'accès des testeurs qui quittent l'entreprise
Une fois votre flux de tests internes CI/CD opérationnel, vous devez vous assurer que les personnes qui quittent l'entreprise n'ont plus accès à vos builds internes. Pour vous aider à gérer l'accès des testeurs aux versions, App Distribution propose les options suivantes :
- fastlane : utilisez votre fichier Fastfile ou exécutez directement les actions fastlane. Pour en savoir plus, consultez Distribuer des applications Android aux testeurs à l'aide de fastlane.
- CLI Firebase : utilisez l'action
firebase appdistribution:testers:remove
. Pour en savoir plus, consultez Distribuer des applications Android aux testeurs à l'aide de la CLI Firebase. - Gradle : si vous utilisez Gradle pour supprimer des testeurs, transmettez
appDistributionRemoveTesters
avec les arguments
et--PROJECT_NUMBER
dans votre fichier--EMAILS build.gradle
. Pour en savoir plus, consultez Distribuer des applications Android aux testeurs à l'aide de Gradle. - API Firebase App Distribution publique : utilisez le point de terminaison
testers.batchRemove
.