Vous pouvez distribuer des builds aux testeurs à l'aide de la CLI Firebase. L'outil CLI vous permet de spécifier des testeurs et des notes de version pour un build, et de le distribuer en conséquence.
Avant de commencer
Si ce n'est pas déjà fait, ajoutez Firebase à votre projet Apple.
Si vous n'utilisez aucun autre produit Firebase, il vous suffit de créer un projet et d'enregistrer votre application. Toutefois, si vous décidez d'utiliser d'autres produits à l'avenir, veillez à suivre toutes les étapes de la page indiquée ci-dessus.
Ouvrez la page App Distribution de la console Firebase. Sélectionnez votre projet Firebase lorsque vous y êtes invité, sélectionnez votre application à l'aide du sélecteur d'applications, puis cliquez sur Commencer.
Étape 1 : Distribuer votre application aux testeurs
Pour distribuer votre application aux testeurs, importez le fichier IPA à l'aide de la CLI Firebase :
- Installez la dernière version de la CLI Firebase ou mettez-la à jour (nous vous recommandons de télécharger le binaire autonome de la CLI spécifique à votre OS). Assurez-vous de vous connecter et de vérifier que vous pouvez accéder à vos projets.
-
Exécutez la commande
appdistribution:distributepour importer votre application et la distribuer aux testeurs. Utilisez les paramètres suivants pour configurer la distribution :Options appdistribution:distribute --appObligatoire : ID de l'application Firebase de votre application. Vous trouverez l'ID d'application dans la console Firebase, sur la page Paramètres généraux.
--app 1:1234567890:ios:0a1b2c3d4e5f67890
--tokenJeton d'actualisation affiché lorsque vous authentifiez votre environnement d'intégration continue avec la CLI Firebase (pour en savoir plus, consultez Utiliser la CLI avec des systèmes d'intégration continue ).
--token "$FIREBASE_TOKEN"
--release-notes
--release-notes-fileNotes de version pour cette compilation.
Vous pouvez spécifier les notes de version directement :
--release-notes "Text of release notes"
Vous pouvez également spécifier le chemin d'accès à un fichier texte brut :
--release-notes-file "/path/to/release-notes.txt"
--testers
--testers-fileLes adresses e-mail des testeurs que vous souhaitez inviter.
Vous pouvez spécifier les testeurs sous la forme d'une liste d'adresses e-mail séparées par une virgule :
--testers "ali@example.com, bri@example.com, cal@example.com"
Vous pouvez également spécifier le chemin d'accès à un fichier texte brut contenant une liste d'adresses e-mail séparées par une virgule :
--testers-file "/path/to/testers.txt"
--groups
--groups-fileLes groupes de testeurs que vous souhaitez inviter (consultez Gérer les testeurs). Les groupes sont spécifiés à l'aide d'
alias de groupe , que vous pouvez rechercher dans la console Firebase.Vous pouvez spécifier les groupes sous forme de liste d'éléments séparés par une virgule :
--groups "qa-team, trusted-testers"
Vous pouvez également spécifier le chemin d'accès à un fichier texte brut contenant une liste de noms de groupes séparés par une virgule :
--groups-file "/path/to/groups.txt"
--debugOption que vous pouvez inclure pour afficher une sortie de journal détaillée.
--test-devices
--test-devices-fileLes appareils de test sur lesquels vous souhaitez exécuter les tests de l'Agent de test d'application.
Vous pouvez spécifier les appareils de test sous la forme d'une liste de spécifications d'appareils séparées par un point-virgule :
--test-devices: "model=shiba,version=34,locale=en,orientation=portrait"
Vous pouvez également spécifier le chemin d'accès à un fichier texte brut contenant une liste d'appareils de test séparés par un point-virgule :
--test-devices-file: "/path/to/test-devices.txt"
--test-usernameNom d'utilisateur pour la connexion automatique à utiliser lors des tests de l'agent de test d'application.
--test-password
--test-password-fileMot de passe de connexion automatique à utiliser lors des tests de l'agent de test d'application.
Vous pouvez également spécifier le chemin d'accès à un fichier texte brut contenant un mot de passe :
--test-password-file: "/path/to/test-password.txt"
--test-username-resourceNom de ressource du champ de nom d'utilisateur pour la connexion automatique à utiliser lors des tests de l'agent de test d'application.
--test-password-resourceNom de ressource du champ de mot de passe pour la connexion automatique à utiliser lors des tests de l'agent de test d'application.
--test-non-blockingSi cette option est définie lors de l'exécution des tests de l'agent de test d'application, la commande lance les tests, puis renvoie immédiatement un résultat au lieu d'attendre qu'ils se terminent. Pour consulter les résultats du test, accédez à la console Firebase. Si cet indicateur n'est pas défini, la commande se bloque jusqu'à ce que les tests soient terminés et se ferme avec un code d'échec si l'un des tests échoue.
--results-bucketUn bucket Google Cloud Storage (GCS) personnalisé dans lequel les résultats des tests sont stockés. Si vous ne renseignez pas ce champ, le bucket par défaut est utilisé. Le bucket doit appartenir à un projet pour lequel la facturation est activée. La spécification d'un bucket entraîne des frais de facturation pour l'espace de stockage utilisé.
Exemple :
firebase appdistribution:distribute test.ipa \ --app 1:1234567890:ios:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txtLa CLI Firebase affiche les liens suivants après l'importation de la version. Ces liens vous aident à gérer les binaires et à vous assurer que les testeurs et les autres développeurs disposent de la bonne version :
firebase_console_uri: lien vers la console Firebase affichant une seule version. Vous pouvez partager ce lien avec d'autres développeurs de votre organisation.testing_uri: lien vers la version dans l'expérience du testeur (extrait Web iOS) qui permet aux testeurs de consulter les notes de version et d'installer l'application sur leur appareil. Le testeur doit avoir accès à la version pour pouvoir utiliser le lien.binary_download_uri: lien signé qui télécharge et installe directement le binaire de l'application (fichier IPA). Le lien expire au bout d'une heure.
Gérer les testeurs et les groupes
En plus de distribuer des versions, vous pouvez également utiliser
appdistribution:testers:addetappdistribution:testers:removepour inviter de nouveaux testeurs ou supprimer des testeurs existants de votre projet Firebase.Une fois qu'un testeur a été ajouté à votre projet Firebase, vous pouvez l'ajouter à des versions individuelles. Une fois que vous avez supprimé un testeur, il n'a plus accès aux versions de votre projet. Notez que les testeurs récemment supprimés peuvent toujours accéder à vos versions pendant un certain temps.
Exemple :
firebase appdistribution:testers:add anothertester@email.com moretesters@email.comfirebase appdistribution:testers:remove anothertester@email.com moretesters@email.comLes adresses e-mail des testeurs doivent être séparées par un espace. Vous pouvez également spécifier des testeurs à l'aide de
--file /path/to/testers.txt.Si vous avez un grand nombre de testeurs, vous devriez envisager d'utiliser des groupes : vous pouvez utiliser
appdistribution:group:createetappdistribution:group:deletepour créer ou supprimer des groupes dans votre projet Firebase.Utilisez
--group-aliaspour spécifier un groupe pour les commandesappdistribution:testers:addetappdistribution:testers:remove.Exemple :
firebase appdistribution:group:create "QA team" qa-teamfirebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.comfirebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.comfirebase appdistribution:group:delete qa-team
Une fois votre build distribué, il est disponible dans le tableau de bord App Distribution de la console Firebase pendant 150 jours (cinq mois). Trente jours avant l'expiration de la compilation, un avis d'expiration s'affiche à la fois dans la console et dans la liste des compilations de votre testeur sur son appareil de test.
Les testeurs qui n'ont pas été invités à tester l'application reçoivent des invitations par e-mail pour commencer, et les testeurs existants reçoivent des notifications par e-mail indiquant qu'un nouveau build est prêt à être testé. Pour savoir comment installer l'application de test, consultez Configurer votre compte de testeur. Vous pouvez surveiller l'état de chaque testeur (s'il a accepté l'invitation et s'il a téléchargé l'application) dans la console Firebase.
Les testeurs disposent de 30 jours pour accepter une invitation à tester l'application avant qu'elle n'expire. Lorsqu'une invitation expire dans cinq jours, un avis d'expiration s'affiche dans la console Firebase à côté du testeur d'une version. Vous pouvez renouveler une invitation en la renvoyant à l'aide du menu déroulant de la ligne du testeur.
Étapes suivantes
Pour enregistrer d'autres appareils manuellement ou de manière programmatique, consultez Enregistrer d'autres appareils iOS.
Découvrez les bonnes pratiques pour distribuer des applications Apple aux testeurs d'assurance qualité à l'aide de la CI/CD et de fastlane.