Il existe plusieurs façons d'utiliser Firebase Test Lab pour exécuter des tests sur votre application Android, y compris l'interface de ligne de commande, Android Studio, l'UI Test Lab dans la console Firebase et l'API de test. Quel que soit le mode de démarrage de vos tests, les résultats sont stockés dans le projet Firebase que vous spécifiez. Vous pouvez explorer les résultats à l'aide de l'API ToolResults en plus de l'un des outils ci-dessus. Cette page explique comment examiner et analyser ces résultats de test.
Concepts clés
Pour afficher les résultats de toutes vos précédentes exécutions de test, sélectionnez Test Lab dans le panneau de navigation de gauche de votre projet dans la console Firebase. Cette page affiche toutes les exécutions de test des applications que vous avez testées avec votre projet à l'aide de Test Lab.
Pour examiner les résultats des tests, vous devez d'abord comprendre trois concepts:
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 en lot, puis affiche les résultats sous forme de matrice de test.
Appareils × Exécutions de test = Matrice de test
- Appareil
- Un appareil physique ou virtuel (Android uniquement) sur lequel vous exécutez un test, comme un téléphone, une tablette ou un accessoire connecté. Les appareils d'une matrice de test sont identifiés par le modèle, 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 fractionner le test et exécuter ses scénarios de test sur différents appareils.
- Matrice de test
- Contient les états et les résultats des exécutions de test. Si l'exécution d'un test dans une matrice échoue, l'ensemble de la matrice échoue.
Les sections suivantes expliquent comment parcourir les résultats des tests.
Interpréter les résultats de l'historique des tests
Lorsque vous accédez aux résultats de vos tests en sélectionnant Test Lab, vous voyez les résultats des tests que vous avez exécutés jusqu'à présent.
L'historique des tests est regroupé par application. Seules les cinq matrices de test les plus récentes sont affichées pour chaque application. Si d'autres sont disponibles, vous pouvez cliquer sur le lien Toutes les matrices en bas de la liste de tests de l'application pour afficher la liste complète de cette application.
Interpréter les résultats de la matrice de test
Lorsque vous démarrez un test via l'interface utilisateur Test Lab, vous êtes redirigé vers une page où vous pouvez consulter votre matrice de test et cliquer sur une exécution de test spécifique pour afficher les résultats. Android Studio et la commande gcloud fournissent également une URL pour la page des résultats de la matrice de test.
Dans une matrice de test typique, vous pouvez exécuter un test sur une douzaine d'appareils différents. Chaque exécution de test peut avoir un résultat différent. Les résultats possibles pour toute exécution de test dans une matrice de test incluent les suivants:
- réussi: aucun échec n'a été détecté.
- Échec : au moins un échec a été rencontré.
- non concluant: les résultats du test n'étaient pas concluants, peut-être en raison d'une erreur Test Lab.
- ignoré: les valeurs de dimension sélectionnées pour certaines exécutions de test dans la matrice étaient incompatibles. Cela se produit lorsque les appareils que vous avez sélectionnés sont incompatibles avec un ou plusieurs des niveaux d'API Android que vous avez sélectionnés.
Pour examiner les résultats agrégés des tests pour toutes les matrices de test d'une application donnée dans votre projet Firebase, cliquez sur le nom de l'application, comme indiqué dans l'exemple suivant:
Exemple de page de résultats de la matrice de test avec seulement quatre exécutions de test
Vous êtes alors redirigé vers la liste des matrices de test de votre application. Vous pouvez y cliquer sur le nom de n'importe quelle matrice de test pour afficher ses résultats, et sur le nom de l'application (indiqué dans le cadre rouge ci-dessous) pour afficher la liste des matrices de test des autres applications associées à votre projet Firebase.
Exemple de page de liste de matrices de test
Une matrice de test peut être réussie, échouer ou ne pas être concluante. Une matrice de test est affichée comme ayant échoué ou non concluante si l'une des exécutions de test de cette matrice échoue ou n'est pas concluante.
Interpréter les résultats des tests Robo
Si vous avez exécuté vos tests avec Robo, les résultats incluent des vidéos et des captures d'écran de l'exploration de l'interface utilisateur par Robo, en plus des métriques de test habituelles. Ces vidéos et captures d'écran incluent des indications visuelles des actions effectuées par Robo pendant l'exploration, comme avec la fonctionnalité "Afficher les éléments tactiles" dans Android. Vous pouvez utiliser les indications pour suivre la progression de Robo et reproduire les bugs qu'il pourrait déceler.
Exemple de vidéo des résultats du test Robo
Interpréter les résultats d'une seule exécution de test
Sur la page des résultats de la matrice de test, cliquez sur l'une des exécutions de test pour afficher le résultat de cette exécution de test spécifique.
Exemple de page de résultats d'exécution de test
Sur cette page, vous pouvez voir le temps nécessaire pour chaque exécution de test. Vous pouvez également consulter les résultats de scénarios de test spécifiques qui correspondent aux méthodes de votre APK de test (pour les tests d'instrumentation) et les résultats détaillés des tests, y compris les journaux de test, les captures d'écran et les vidéos. Pour le test Robo, les résultats détaillés du test incluent également une carte d'activité qui affiche sous forme graphique les chemins d'accès de l'interface utilisateur visités par le test Robo.
Résultats des tests d'instrumentation partitionnés
Pour vous aider à interpréter les résultats des tests instrumentés, Test Lab sépare chaque test sur sa propre page de rapport détaillée, avec des traces de pile, des journaux et des vidéos. Cette fonctionnalité fonctionne que vous utilisiez ou non Android Orchestrator.
Exemple de page de résultats d'un scénario de test
Interpréter les résultats d'accessibilité
Les tests Robo utilisent Android Accessibility Scanner pour détecter les problèmes d'accessibilité dans votre application (notez que vous pouvez également exécuter une analyse localement sur votre appareil). Pour savoir comment examiner et interpréter les résultats d'accessibilité de votre test Robo, consultez Premiers pas avec Accessibility Scanner.
Pour obtenir des informations générales sur l'amélioration de l'accessibilité de votre application, consultez la documentation Android sur l'accessibilité destinée aux développeurs.
Métriques de performances
Les tests exécutés sur des appareils physiques renvoient également des métriques de performances:
Métrique | Configuration requise de l'appareil |
---|---|
Délai de démarrage de l'application | API 19 et versions ultérieures |
Utilisation du processeur | API 21 et versions ultérieures |
Utilisation de la mémoire | |
Activité réseau | |
Images par seconde | API 21 ou version ultérieure, et inclut un SurfaceView |
Résultats détaillés des tests
Les résultats détaillés des tests sont disponibles pendant 90 jours après l'exécution d'un test et sont stockés dans un bucket Google Cloud Storage (mais sont également visibles dans la console Firebase). Vous pouvez consulter les résultats détaillés des tests dans le bucket Cloud Storage lorsque vous cliquez sur Résultats des tests sur la page des résultats d'exécution des tests. Lorsque les résultats détaillés des tests ne sont plus disponibles, vous pouvez toujours voir les tests réussis ou ayant échoué.
Pour conserver les résultats détaillés des tests pendant plus de 90 jours, vous devez les envoyer à un bucket Cloud Storage que vous possédez à l'aide de l'option de ligne de commande gcloud --results-bucket. Vous pouvez ensuite définir le paramètre Age pour déterminer la durée de stockage des résultats dans votre bucket Cloud Storage. Pour savoir comment modifier le paramètre Age, consultez la section Conditions de cycle de vie.