Commencer à tester Android avec Firebase Test Lab

Firebase Test Lab vous permet de tester votre application sur un large éventail d'appareils et de configurations. Ce guide de démarrage vous fournit un chemin d'implémentation à suivre, ainsi qu'une présentation des offres Android de Test Lab.

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

Concepts clés

Lorsque vous exécutez un test ou un ensemble de scénarios 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 accessoire 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 scénarios 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 scénarios de test sur différents appareils.
Matrice de test
Contient les états et les résultats des tests pour 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

Types de tests disponibles

Vous pouvez exécuter les tests suivants avec Test Lab. Notez que tous les types de tests sont limités à 45 minutes sur les appareils physiques et à 60 minutes sur les appareils virtuels. Toute exception non détectée entraîne l'échec d'un test.

  • Test d'instrumentation ou test unitaire instrumenté : test que vous avez écrit à l'aide des frameworks Espresso ou UI Automator. Avec ce test, vous pouvez effectuer des assertions explicites sur l' état de votre application pour vérifier que la fonctionnalité est correcte à l'aide des API AndroidJUnitRunner.

  • Test Robo : test automatisé qui analyse l'interface utilisateur de votre application, puis l'explore méthodiquement en simulant les activités des utilisateurs, sans que vous ayez à écrire de code. Pour en savoir plus, consultez À propos des tests Robo.

  • Test de boucle de jeu : test qui utilise un "mode de démonstration" 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 (pour en savoir plus, consultez À propos des tests de boucle de jeu). Vous pouvez également organiser les boucles à l'aide de libellés afin de pouvoir les suivre et les réexécuter.

    Pour savoir comment exécuter ce test avec Test Lab, consultez Exécuter un test de boucle de jeu.

Outils pour exécuter votre test

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

  • Recommandé pour les nouveaux utilisateurs : la Firebase console vous permet d'importer une application et de lancer des tests depuis votre navigateur Web. Pour savoir comment exécuter des tests à l'aide de cet outil, consultez Tester avec la Firebase console.

  • L'intégration d'Android Studio vous permet de tester votre application sans quitter votre environnement de développement. Pour savoir comment exécuter des tests à l'aide de cet outil, consultez Tester avec Android Studio.

  • L'interface de ligne de commande 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. Pour savoir comment exécuter des tests à l'aide de cet outil, consultez Tester avec la gcloud CLI.

Vous pouvez également tester votre application sans frais avec Test Lab lorsque vous importez et publiez les fichiers APK de votre application sur le Play Store à l'aide du canal alpha ou bêta. Pour en savoir plus, consultez Utiliser un rapport pré-lancement pour identifier les problèmes et Tests Robo.

Étape 2 : Choisissez votre appareil de test

Test Lab est compatible avec les tests sur plusieurs marques et modèles d' appareils Android installés et exécutés dans un centre de données Google. Les tests sur les appareils de Test Lab vous aident à détecter les problèmes qui peuvent ne pas se produire lorsque vous testez votre application à l'aide d'émulateurs dans Android Studio. Pour en savoir plus, consultez Appareils disponibles.

Étape 3 : Examinez les résultats des tests

Quelle que soit la façon 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 scénarios de test, des captures d'écran, le nombre de tests réussis, échoués ou ayant obtenu des résultats instables, et plus encore.

Les résultats bruts des tests contiennent les journaux de test et les détails des échecs de l'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

Lorsque vous lancez un test à partir de Android Studio, vous pouvez également examiner les résultats des tests depuis votre environnement de développement.

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 des applications et réinitialiser les paramètres système des appareils physiques après chaque exécution de test afin de nous assurer 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 afin que chaque exécution de test utilise une nouvelle instance d'appareil virtuel.


Test Lab et services Google Play

Test Lab appareils fonctionnent généralement avec la dernière version du SDK des services Google Play, mais certains peuvent nécessiter quelques jours pour être mis à jour après la publication d'une nouvelle version du SDK. Notez que vous pouvez rencontrer des problèmes de compatibilité avec certains appareils.

Autoriser les appareils de test à 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 capacité 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 et des tests d'applications.

  • Si vous devez utiliser des annonces réelles dans votre test, informez les fournisseurs de publicité digitale 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 gcloud CLI. 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 (développé 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)