Premiers pas avec Firebase Test Lab pour iOS

Firebase Test Lab vous permet de tester la qualité de votre application sur un large éventail d'appareils et de configurations. Ce guide présente les concepts clés de Test Lab's, les offres iOS et des instructions pour commencer les tests.

Pour en savoir plus sur les quotas et les forfaits Test Lab, consultez Utilisation, quotas et tarifs.

Termes et concepts clés

Lorsque vous exécutez un test ou un ensemble de cas de test sur les appareils et les configurations que vous avez sélectionnés, Test Lab exécute le test sur votre application par lot, puis affiche les résultats sous forme de matrice de test.

Appareils × Exécutions de test = Matrice de test

Appareil
Appareil physique ou virtuel (Android uniquement) sur lequel vous exécutez un test, tel qu'un téléphone, une tablette ou un appareil connecté. Les appareils d'une matrice de test sont identifiés par le modèle d'appareil, la version de l'OS, l'orientation de l'écran et les paramètres régionaux (également appelés paramètres géographiques et linguistiques).
Test, exécution de test
Test (ou ensemble de cas de test) à exécuter sur un appareil. Vous pouvez exécuter un test par appareil ou, si vous le souhaitez, le fragmenter et exécuter ses cas de test sur différents appareils.
Matrice de test
Contient les états et les résultats de vos exécutions de test. Si une exécution de test dans une matrice échoue, la matrice entière échoue.

Étape 1 : Préparez votre test pour l'importer dans Test Lab

Vous pouvez exécuter les tests suivants avec Test Lab. Notez que tous les types de tests peuvent durer jusqu'à 45 minutes sur les appareils physiques, et que toute exception non interceptée entraînera l'échec du test.

  • XCTest (y compris XCUITests) : test unitaire que vous avez écrit à l'aide du framework XCTest. Consultez Créer un XCTest pour savoir comment modifier un XCTest afin de l'exécuter avec Test Lab.

  • Test de boucle de jeu : test qui utilise un "mode démo" pour simuler les actions des joueurs dans les applications de jeu. Il s'agit d'un moyen rapide et évolutif de vérifier que votre jeu fonctionne correctement pour les utilisateurs. Lorsque vous choisissez d'exécuter un test de boucle de jeu, vous pouvez :

    • écrire des tests natifs pour votre moteur de jeu ;

    • éviter d'écrire le même code pour différentes interfaces utilisateur ou frameworks de test ;

    • créer éventuellement plusieurs boucles à exécuter en une seule exécution de test. Vous pouvez également organiser les boucles à l'aide de libellés afin de pouvoir les suivre et les réexécuter.

    Consultez Exécuter un test de boucle de jeu pour savoir comment exécuter votre test dans Test Lab.

Étape 2 : Choisissez un outil pour exécuter votre test

Vous pouvez choisir les outils suivants pour exécuter votre test :

  • La Firebase console vous permet d'importer une application et de lancer des tests où que vous soyez. Consultez Tester avec la console pour savoir comment utiliser cet outil.Firebase

  • L'interface de ligne de commande (CLI) gcloud vous permet d'exécuter des tests de manière interactive à partir de la ligne de commande. Elle est également adaptée à la création de scripts dans le cadre de votre processus automatisé de compilation et de test. Consultez Tester avec la CLI gcloud pour savoir comment utiliser cet outil.

  • Avant de tester sur des appareils réels, exécutez votre test localement sur un simulateur pour vous assurer qu'il se comporte comme prévu. Consultez Tester localement pour obtenir des instructions.

Étape 3 : Spécifiez les appareils de test

Avec Test Lab, vous pouvez exécuter votre test sur votre application sur un large éventail d'appareils et de modèles iOS hébergés dans un centre de données Google. Pour en savoir plus, consultez Appareils disponibles.

Étape 4 : Examinez les résultats des tests

Quelle que soit la manière dont vous lancez vos tests, tous les résultats sont gérés par Test Lab et peuvent être consultés en ligne.

Le résumé des résultats des tests est automatiquement stocké et peut être consulté dans la console Firebase. Il contient les données les plus pertinentes pour votre test, y compris des vidéos spécifiques aux cas de test, des captures d'écran, le nombre de tests réussis, échoués ou ayant donné des résultats instables, et plus encore.

Les résultats bruts des tests contiennent les journaux de test et les détails des échecs d'application. Ils sont automatiquement stockés dans un bucket Google Cloud. Si vous spécifiez un bucket, vous êtes responsable des coûts de stockage. Si vous n'en spécifiez pas, Test Lab en crée un pour vous sans frais.

Pour en savoir plus, consultez Analyser les résultats.Firebase Test Lab

Nettoyage des appareils

Google prend la sécurité des données de votre application très au sérieux. Nous suivons les bonnes pratiques standards du secteur pour supprimer les données d'application et réinitialiser les paramètres système des appareils physiques après chaque exécution de test. Nous nous assurons ainsi qu'ils sont prêts à exécuter de nouveaux tests. Pour les appareils sur lesquels nous pouvons installer une image de récupération personnalisée, nous allons plus loin en les flashant entre les exécutions de test.

Pour les appareils virtuels utilisés par Test Lab, les instances d'appareil sont supprimées après leur utilisation. Chaque exécution de test utilise donc une nouvelle instance d'appareil virtuel.


Autoriser les appareils Test Lab à accéder aux serveurs backend privés

Certaines applications mobiles doivent communiquer avec des services backend privés pour fonctionner correctement lors des tests. Si vos serveurs backend sont protégés par des règles de pare-feu, vous pouvez autoriser l'accès aux appareils physiques et virtuels de Test Lab en utilisant les blocs d'adresses IP ci-dessous pour ouvrir des routes via votre pare-feu.

Mobile advertising

Test Lab fournit une infrastructure évolutive qui automatise les tests d'applications. Malheureusement, cette fonctionnalité peut être utilisée à mauvais escient par des applications malveillantes conçues pour générer des revenus publicitaires frauduleux.

Pour résoudre ce problème, procédez comme suit :

  • Si vous utilisez des fournisseurs de publicité numérique tiers ou si vous travaillez avec eux (par exemple, des réseaux publicitaires ou des plates-formes côté demande), nous vous recommandons d'utiliser des annonces de test plutôt que des annonces réelles lors du développement d'applications et des tests.

  • Si vous devez utiliser des annonces réelles dans votre test, informez les fournisseurs de publicité numérique avec lesquels vous travaillez de filtrer les revenus et tout le trafic correspondant généré par Test Lab à l'aide des blocs d'adresses IP ci-dessous. Vous n'avez pas besoin d'informer les fournisseurs d'annonces appartenant à Google. Test Lab s'en charge pour vous.

Adresses IP utilisées par les appareils Test Lab

Tout le trafic réseau généré par les appareils Test Lab provient des blocs d'adresses IP suivants. Vous pouvez également accéder à cette liste à l'aide de la gcloud beta firebase test ip-blocks list commande dans la CLI gcloud. La liste est mise à jour en moyenne une fois par an.

Plate-forme et type d'appareil Bloc d'adresses IP CIDR
Appareils physiques Android et iOS, appareils virtuels ARM

70.32.128.0/19 (ajouté en février 2022)

108.177.6.0/23

108.177.18.192/26 (ajouté en février 2022)

108.177.29.64/27 (étendu en février 2022)

108.177.31.160/27 (ajouté en février 2022)

199.36.156.8/29 (ajouté en février 2022)

199.36.156.16/28 (ajouté en février 2022)

209.85.131.0/27 (ajouté en février 2022)

2001:4860:1008::/48 (ajouté en février 2022)

2001:4860:1018::/48 (ajouté en février 2022)

2001:4860:1019::/48 (ajouté en février 2022)

2001:4860:1020::/48 (ajouté en février 2022)

2001:4860:1022::/48 (ajouté en février 2022)

2001:4860:101d::/48 (ajouté en octobre 2025)

2001:4860:101e::/48 (ajouté en octobre 2025)

2001:4860:1031::/48 (ajouté en octobre 2025)

70.32.128.48/28 (ajouté en avril 2024)

70.32.150.192/27 (ajouté en septembre 2025)

108.177.6.0/27 (ajouté en septembre 2025)

108.177.24.160/27 (ajouté en septembre 2025)

108.177.29.0/27 (ajouté en septembre 2025)

Appareils virtuels Android (non ARM)

34.68.194.64/29 (ajouté en novembre 2019)

34.69.234.64/29 (ajouté en novembre 2019)

34.73.34.72/29 (ajouté en novembre 2019)

34.73.178.72/29 (ajouté en novembre 2019)

34.74.10.72/29 (ajouté en février 2022)

34.136.2.136/29 (ajouté en février 2022)

34.136.50.136/29 (ajouté en février 2022)

34.145.234.144/29 (ajouté en février 2022)

35.192.160.56/29

35.196.166.80/29

35.196.169.240/29

35.203.128.0/28

35.234.176.160/28

35.243.2.0/27 (ajouté en juillet 2019)

35.245.243.240/29 (ajouté en février 2022)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29

Blocs d'adresses IP d'appareils qui ne sont plus utilisés

74.125.122.32/29 (supprimé en février 2022)

216.239.44.24/29 (supprimé en février 2022)