Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

Commencez à tester pour Android avec Firebase Test Lab

Firebase Test Lab vous permet de tester votre application sur une gamme d'appareils et de configurations. Ce guide de démarrage fournit un chemin de mise en œuvre à suivre, ainsi qu'une introduction aux offres Android de Test Lab.

Pour plus d'informations sur les quotas et les plans tarifaires de Test Lab, consultez Utilisation, quotas et tarification .

Concepts clés

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

Périphériques × exécutions de test = matrice de test

Appareil
Un appareil physique ou virtuel (Android uniquement) sur lequel vous effectuez un test, tel qu'un téléphone, une tablette ou un appareil portable. Les appareils d'une matrice de test sont identifiés par le modèle d'appareil, la version du système d'exploitation, l'orientation de l'écran et les paramètres régionaux (également appelés paramètres géographiques et linguistiques).
Tester, tester l'exécution
Un test (ou un ensemble de cas de test) à exécuter sur un appareil. Vous pouvez exécuter un test par appareil, ou éventuellement fragmenter le test et exécuter ses scénarios de test sur différents appareils.
Matrice de test
Contient les statuts et les résultats de test 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 le téléchargement vers 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 interceptée entraînera un échec du test.

  • Test d' instrumentation ou test unitaire instrumenté : Un test que vous avez écrit à l'aide des frameworks Espresso ou UI Automator 2.0 . Avec ce test, vous pouvez faire des affirmations explicites sur l'état de votre application pour vérifier le bon fonctionnement à l'aide des API AndroidJUnitRunner .

  • Test Robo : Un test automatisé qui analyse l'interface utilisateur de votre application, puis l'explore méthodiquement en simulant les activités des utilisateurs, sans vous obliger à écrire de code. Visitez À propos des tests Robo pour plus d'informations.

  • Test de boucle de jeu : un 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 bien pour les utilisateurs. Lorsque vous choisissez d'exécuter un test Game Loop, vous pouvez :

    • Ecrivez des tests natifs de votre moteur de jeu

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

    • Créez éventuellement plusieurs boucles à exécuter en une seule exécution de test (visitez À propos des tests de boucle de jeu pour en savoir plus). Vous pouvez également organiser des boucles à l'aide d'étiquettes afin de pouvoir en garder une trace et réexécuter des boucles spécifiques.

    Voir Exécuter un test de boucle de jeu pour obtenir des instructions sur l'exécution de ce test avec Test Lab.

Outils pour exécuter votre test

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

  • Recommandé pour les utilisateurs novices : la console Firebase vous permet de télécharger une application et de lancer des tests à partir de votre navigateur Web. Consultez Tester avec la console Firebase pour obtenir des instructions sur l'exécution de tests à l'aide de cet outil.

  • L'intégration d'Android Studio vous permet de tester votre application sans quitter votre environnement de développement. Voir Tester avec Android Studio pour obtenir des instructions sur l'exécution de tests à l'aide de cet outil.

  • L' interface de ligne de commande gcloud vous permet d'exécuter des tests à partir de la ligne de commande de manière interactive et est également bien adaptée aux scripts dans le cadre de votre processus automatisé de génération et de test. Consultez Tester avec la CLI gcloud pour obtenir des instructions sur l'exécution de tests à l'aide de cet outil.

Vous pouvez également tester votre application gratuitement avec Test Lab lorsque vous téléchargez et publiez les fichiers APK de votre application sur le Play Store en utilisant le canal alpha ou bêta. Pour plus d'informations, consultez Utiliser les rapports de pré-lancement pour identifier les problèmes et les tests Robo .

Étape 2 : Choisissez votre appareil de test

Test Lab prend en charge 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 dans Test Lab vous aident à détecter les problèmes qui pourraient ne pas se produire lors du test de votre application à l'aide d'émulateurs dans Android Studio. Pour en savoir plus, voir Appareils disponibles.

Étape 3 : Examiner les résultats des tests

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

Le résumé des résultats du test 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 qui ont réussi, échoué ou obtenu des résultats irréguliers, etc.

Les résultats bruts des tests contiennent des journaux de test et des détails sur les échecs de l'application, et sont automatiquement stockés dans un bucket Google Cloud. Si vous spécifiez un compartiment, vous êtes responsable du coût du stockage. Si vous ne spécifiez pas de compartiment, Test Lab en crée un gratuitement pour vous.

Pour plus de détails, consultez Analyser les résultats du laboratoire de test Firebase.

Lorsque vous lancez un test à partir d' Android Studio , vous pouvez également consulter les résultats du test depuis votre environnement de développement.

Nettoyage de l'appareil

Google prend la sécurité des données de vos applications très au sérieux. Nous suivons les meilleures pratiques standard de l'industrie 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 que nous pouvons flasher avec une image de récupération personnalisée, nous allons encore plus loin en flashant ces appareils entre les tests.

Pour les appareils virtuels utilisés par Test Lab, les instances d'appareils 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

Les appareils Test Lab fonctionnent généralement sur la dernière version du SDK des services Google Play, mais certains peuvent nécessiter quelques jours pour se mettre à jour après la sortie 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 principaux privés

Certaines applications mobiles doivent communiquer avec des services backend privés pour fonctionner correctement pendant les tests. Si vos serveurs principaux 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 à travers votre pare-feu.

Publicité mobile

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

Pour atténuer ce problème :

  • Si vous utilisez ou travaillez avec des fournisseurs de publicité numérique tiers (par exemple, des réseaux publicitaires ou des plates-formes côté demande), il est recommandé d'utiliser des publicités de test plutôt que de vraies publicités pendant le développement et les tests de l'application.

  • Si vous devez utiliser de vraies publicités dans votre test, informez les fournisseurs de publicité numérique avec lesquels vous travaillez pour filtrer les revenus et tout le trafic correspondant généré par Test Lab en utilisant les 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. Notez que vous pouvez également accéder à cette liste à l'aide de la commande gcloud beta firebase test ip-blocks list dans la CLI gcloud. La liste est mise à jour périodiquement (une fois par an en moyenne).

Plateforme et type d'appareil Bloc d'adresse IP CIDR
Appareils physiques Android et iOS

108.177.6.0/23

70.32.147.112/28 (ajouté 03-2020)

74.125.122.32/29 (ajouté 04-2020)

108.177.29.80/28 (ajouté 04-2020)

216.239.44.24/29 (ajouté 04-2020)

Appareils virtuels Android

34.68.194.64/29 (ajouté le 11-2019)

34.69.234.64/29 (ajouté le 11-2019)

34.73.34.72/29 (ajouté le 11-2019)

34.73.178.72/29 (ajouté le 11-2019)

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é 7-2019)

199.192.115.0/30

199.192.115.8/30

199.192.115.15.16/29