Distribuer des applications iOS à des testeurs à l'aide de la CLI Firebase

Vous pouvez distribuer des builds aux testeurs à l'aide de la CLI Firebase. L'outil CLI vous permet de spécifier les testeurs et les notes de version d'un build, et de le distribuer en conséquence.

Pour distribuer votre application aux testeurs, importez le fichier IPA à l'aide de la CLI Firebase:

  1. Installez la dernière version de la CLI Firebase ou appliquez la mise à jour correspondante (nous vous recommandons de télécharger le binaire autonome pour la CLI spécifique à votre OS). Assurez-vous de vous connecter et de vérifier que vous pouvez accéder à vos projets. .
  2. Sur la page App Distribution de la console Firebase, sélectionnez l'application que vous souhaitez distribuer, puis cliquez sur Commencer.
  3. Exécutez la commande appdistribution:distribute pour importer votre application et la distribuer aux testeurs. Configurez la distribution à l'aide des paramètres suivants:

    appdistribution:distribute options
    --app

    Obligatoire : ID d'application Firebase de votre application. Vous trouverez l'ID de l'application dans la console Firebase, sur la page Paramètres généraux.

    --app 1:1234567890:ios:0a1b2c3d4e5f67890
    --token

    Jeton de rafraîchissement imprimé lorsque vous authentifiez votre environnement de CI avec la CLI Firebase (pour en savoir plus, consultez la section Utiliser la CLI avec les systèmes de CI).

    --token "$FIREBASE_TOKEN"
    --release-notes
    --release-notes-file

    Notes de version de ce build.

    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-file

    Les 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-file

    Les groupes de testeurs que vous souhaitez inviter (consultez la section 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"
    --debug

    Option que vous pouvez inclure pour imprimer la sortie du journal détaillée.

    --test-devices
    --test-devices-file

    Les types de distribution suivants font partie de la fonctionnalité bêta du testeur automatique.

    Les appareils de test sur lesquels vous souhaitez distribuer des builds (voir la section Tests automatisés).

    Vous pouvez spécifier les testeurs sous la forme d'une liste d'adresses e-mail séparées par une virgule :

    --test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"

    Vous pouvez également spécifier le chemin d'accès à un fichier en 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-username

    Nom d'utilisateur à utiliser pour la connexion automatique lors des tests automatisés.

    --test-password
    --test-password-file

    Mot de passe de connexion automatique à utiliser lors des tests automatisés.

    Vous pouvez également spécifier le chemin d'accès à un fichier en texte brut contenant un mot de passe:

    --test-password-file: "/path/to/test-password.txt"
    --test-username-resource

    Nom de ressource du champ "Nom d'utilisateur" pour la connexion automatique à utiliser lors des tests automatisés.

    --test-password-resource

    Nom de la ressource du champ de mot de passe à utiliser pour la connexion automatique lors des tests automatisés.

    --test-non-blocking

    Exécuter des tests automatisés de manière asynchrone. Accédez à la console Firebase pour consulter les résultats des tests automatiques.

    Exemple :

    firebase appdistribution:distribute test.ipa  \
        --app 1:1234567890:ios:0a1b2c3d4e5f67890  \
        --release-notes "Bug fixes and improvements" --testers-file testers.txt

    La 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 version appropriée:

    • firebase_console_uri : lien vers la console Firebase affichant une seule version. Vous pouvez partager ce lien avec les autres développeurs de votre organisation.
    • testing_uri : lien vers la version dans l'interface pour les testeurs (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:add et appdistribution:testers:remove pour 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 conserver l'accès à vos versions pendant un certain temps.

    Exemple :

    firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com

    Les 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, envisagez d'utiliser des groupes : vous pouvez utiliser appdistribution:group:create et appdistribution:group:delete pour créer ou supprimer des groupes dans votre projet Firebase.

    Utilisez --group-alias pour spécifier un groupe pour les commandes appdistribution:testers:add et appdistribution:testers:remove.

    Exemple :

    firebase appdistribution:group:create "QA team" qa-team
    
    firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:group:delete qa-team

Une fois que vous avez distribué votre build, il est disponible dans le tableau de bord App Distribution de la console Firebase pendant 150 jours (cinq mois). Lorsque le build est sur le point d'expirer dans 30 jours, une notification d'expiration s'affiche à la fois dans la console et dans la liste des builds 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'une nouvelle version est prête à être testée. Pour savoir comment installer l'application de test, consultez Configurer un 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 est sur le point d'expirer dans cinq jours, une notification 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 sur la ligne du testeur.

Étapes suivantes