Analyser les résultats de Firebase Test Lab

Vous pouvez utiliser Firebase Test Lab de différentes manières pour exécuter des tests sur votre application Android, y compris l'interface de ligne de commande, Android Studio, l'Test Lab UI dans la Firebase console et l'API Testing. Quelle que soit la méthode choisie pour lancer 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 exécutions de test précédentes, sélectionnez Test Lab dans le panneau de navigation de gauche de votre projet dans la Firebase console. 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 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 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 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.

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 des tests d'application pour afficher la liste complète de cette application.

Interpréter les résultats de la matrice de test

Lorsque vous lancez un test via l'Test Lab interface utilisateur, vous êtes redirigé vers une page où vous pouvez voir votre matrice de test et cliquer sur une exécution de test spécifique pour afficher les résultats du test. Android Studio et la commande gcloud fournissent également une URL pour la page de résultats de la matrice de test.

Dans une matrice de test type, 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 sont les suivants :

  • Réussi Test réussi : aucune erreur n'a été rencontrée.
  • Échec Échec du test : au moins une erreur a été rencontrée.
  • Non concluant Test réussi : les résultats du test n'étaient pas concluants, peut-être en raison d'une erreur Test Lab.
  • Ignoré Test réussi : les valeurs de dimension sélectionnées pour certaines exécutions de test dans la matrice n'étaient pas compatibles. Cela se produit lorsque les appareils que vous avez sélectionnés ne sont pas compatibles avec un ou plusieurs 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 illustré dans l'exemple suivant :

Exemple de page de résultats de matrice de test avec seulement quatre exécutions de test Résultats de la matrice de test

Vous accédez alors à la liste des matrices de test de votre application, où vous pouvez cliquer sur le nom d'une matrice de test pour afficher les résultats de la matrice de test, et où vous pouvez cliquer sur le nom de l'application (affiché 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 Liste des matrices de test

Une matrice de test peut être réussie, échouer ou être non concluante. Une matrice de test est affichée comme ayant échoué ou non concluante si des exécutions de test dans cette matrice échouent ou ne sont pas concluantes.

Interpréter les résultats des tests Robo

Si vous avez exécuté vos tests avec Robo, vos résultats incluent des vidéos et des captures d'écran de Robo explorant votre interface utilisateur, 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 lors de l'exploration, semblables à la fonctionnalité "Afficher les touches" d'Android. Vous pouvez utiliser ces indications pour suivre la progression de Robo et reproduire les bugs qu'il pourrait découvrir.

Exemple de vidéo de résultats de test Robo

Résultats des tests Robo

Interpréter les résultats d'une seule exécution de test

Sur la page de 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 Résultats de l'exécution des tests

Sur cette page, vous pouvez voir le temps nécessaire pour chaque exécution de test. Vous pouvez également afficher les résultats de scénarios de test spécifiques correspondant à des méthodes de votre APK de test (pour les tests d'instrumentation) et des résultats de test détaillés, y compris les journaux de test, les captures d'écran et les vidéos. Pour les tests Robo, les résultats de test détaillés incluent également une carte d'activité qui affiche graphiquement les chemins d'interface utilisateur qui ont été visités par le test Robo.

Résultats de test d'instrumentation partitionnés

Pour vous aider à interpréter les résultats des tests d'instrumentation, Test Lab sépare chaque test dans sa propre page de rapport détaillé, 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 de scénario de test Résultats des scénarios 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 obtenir des instructions sur l'examen et l'interprétation des 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étriqueConfiguration d'appareil requise
Délai de démarrage de l'applicationAPI 19 ou version ultérieure
Utilisation du processeurAPI 21 ou version ultérieure
Utilisation de la mémoire
Activité réseau
Images par secondeAPI 21 ou version ultérieure et inclut un SurfaceView

Résultats de test détaillés

Les résultats de test détaillés sont disponibles pendant 90 jours après l'exécution d'un test et sont stockés dans un Google Cloud Storage bucket (mais sont également visibles dans la Firebase console). Vous pouvez afficher les résultats de test détaillés dans le Cloud Storage bucket lorsque vous cliquez sur Résultats de test sur la page de résultats d'exécution de test. Lorsque les résultats de test détaillés ne sont plus disponibles, vous pouvez toujours voir quels tests ont réussi ou échoué.

Si vous souhaitez conserver les résultats de test détaillés pendant plus de 90 jours, vous pouvez envoyer ces résultats de test à un bucket Cloud Storage dont vous êtes propriétaire à l'aide de l'option de ligne de commande gcloud --results-bucket. Vous pouvez ensuite définir le paramètre Âge pour déterminer la durée de stockage des résultats dans votre Cloud Storage bucket. Pour savoir comment modifier le paramètre Âge , consultez Conditions de cycle de vie.

Lors de l'exécution d'un test, si vous recevez l'erreur does not have storage.objects.create access to the Google Cloud Storage object. Permission 'storage.objects.create' denied on resource (or it may not exist).., il est possible que le compte principal exécutant le test ne dispose pas de l'autorisation appropriée sur le projet. Par défaut, Firebase crée un bucket pour vous dans Google Cloud Storage. Toutefois, le compte principal exécutant le test doit disposer du rôle "roles/editor", qui est un rôle permissif. Si vous ne pouvez pas accorder ce rôle au compte principal, vous pouvez utiliser l'option de ligne de commande gcloud --results-bucket.