Analizza i risultati di Firebase Test Lab

Esistono diversi modi per utilizzare Firebase Test Lab per eseguire test sulla tua app per Android, tra cui l'interfaccia a riga di comando, Android Studio, l'Test Lab UI nella Firebase console e la Testing API. Indipendentemente dal modo in cui scegli di avviare i test, i risultati vengono archiviati nel progetto Firebase che specifichi. Puoi esplorare i risultati utilizzando l'API ToolResults oltre a uno degli strumenti sopra indicati. Questa pagina descrive come esaminare e analizzare questi risultati dei test.

Concetti fondamentali

Nella console Firebase, puoi visualizzare i risultati di tutte le esecuzioni di test precedenti andando a DevOps e coinvolgimento > Test Lab. Questa pagina mostra tutti i risultati dettagliati delle esecuzioni di test delle app che hai testato con il tuo progetto utilizzando Test Lab.

Per esaminare i risultati dei test, devi prima comprendere tre concetti:

Quando esegui un test o un insieme di scenari di test su dispositivi e configurazioni selezionati, Test Lab esegue il test sulla tua app in batch, quindi visualizza i risultati come una matrice di test.

Dispositivi × Esecuzioni di test = Matrice di test

Dispositivo
Un dispositivo fisico o virtuale (solo Android) su cui esegui un test, ad esempio uno smartphone, un tablet o un dispositivo indossabile. I dispositivi in una matrice di test sono identificati dal modello del dispositivo, dalla versione del sistema operativo, dall'orientamento dello schermo e dalle impostazioni internazionali (note anche come impostazioni geografiche e della lingua).
Test, esecuzione del test
Un test (o un insieme di scenari di test) da eseguire su un dispositivo. Puoi eseguire un test per dispositivo o, facoltativamente, suddividere il test ed eseguire i relativi scenari di test su dispositivi diversi.
Matrice di test
Contiene gli stati e i risultati dei test per le esecuzioni di test. Se un'esecuzione del test in una matrice non va a buon fine, l'intera matrice non va a buon fine.

Le sezioni seguenti spiegano come navigare tra i risultati dei test.

Interpretare i risultati della cronologia dei test

Quando vai ai risultati dei test selezionando Test Lab, vengono visualizzati i risultati dei test eseguiti finora.

La cronologia dei test è raggruppata per app. Per ogni app vengono visualizzate solo le cinque matrici di test più recenti. Se sono disponibili altre matrici, puoi fare clic sul link Tutte le matrici nella parte inferiore dell'elenco dei test delle app per visualizzare l'elenco completo per l'app.

Interpretare i risultati della matrice di test

Quando avvii un test tramite l'interfaccia utente Test Lab, vieni reindirizzato a una pagina in cui puoi vedere la matrice di test e fare clic su una specifica esecuzione del test per visualizzare i risultati dei test. Android Studio e il comando gcloud forniscono anche un URL per la pagina dei risultati della matrice di test.

In una matrice di test tipica, potresti eseguire un test su una decina di dispositivi diversi. Ogni esecuzione del test può avere un risultato diverso. I possibili risultati per qualsiasi esecuzione del test in una matrice di test includono:

  • Superato Test superato: non sono stati riscontrati errori.
  • Non riuscito Test non riuscito: è stato riscontrato almeno un errore.
  • Non conclusivo Test superato: i risultati dei test non sono conclusivi, probabilmente a causa di un Test Lab errore.
  • Ignorato Test superato: i valori delle dimensioni selezionate per alcune esecuzioni di test nella matrice non erano compatibili. Ciò si verifica quando i dispositivi selezionati non sono compatibili con uno o più livelli API Android selezionati.

Per esaminare i risultati dei test aggregati per tutte le matrici di test di una determinata app nel progetto Firebase, fai clic sul nome dell'app, come mostrato nell'esempio seguente:

Pagina dei risultati della matrice di test di esempio con solo quattro esecuzioni di test Risultati della matrice di test

Viene visualizzata la pagina dell'elenco delle matrici di test per l'app, in cui puoi fare clic sul nome di una matrice di test per visualizzare i risultati della matrice di test e sul nome dell'app (mostrato nella casella rossa di seguito) per visualizzare l'elenco delle matrici di test per altre app associate al tuo progetto Firebase.

Pagina dell'elenco delle matrici di test di esempio Elenco delle matrici di test

Una matrice di test può essere superata, non riuscita o non conclusiva. Una matrice di test viene visualizzata come non riuscita o non conclusiva se una delle esecuzioni di test nella matrice non va a buon fine o non è conclusiva.

Interpretare i risultati del test Robo

Se hai eseguito i test con Robo, i risultati includono video e screenshot di Robo che esegue la scansione dell'interfaccia utente, oltre alle metriche di test standard. Questi video e screenshot includono indicazioni visive delle azioni eseguite da Robo durante la scansione, simili alla funzionalità "Mostra tocchi" in Android. Puoi utilizzare le indicazioni per seguire i progressi di Robo e riprodurre eventuali bug che potrebbe scoprire.

Video dei risultati del test Robo di esempio

Risultati del test Robo

Interpretare i risultati di una singola esecuzione del test

Nella pagina dei risultati della matrice di test, fai clic su una delle esecuzioni del test per visualizzare il risultato di quella specifica esecuzione del test.

Pagina dei risultati dell'esecuzione del test di esempio Risultati dell'esecuzione del test

In questa pagina puoi vedere il tempo necessario per ogni esecuzione del test. Puoi anche visualizzare i risultati per scenari di test specifici che corrispondono ai metodi nell'APK di test (per i test di instrumentazione) e i risultati dettagliati dei test, inclusi log di test, screenshot e video. Per il test Robo, i risultati dettagliati dei test includono anche una mappa delle attività che mostra graficamente i percorsi dell'interfaccia utente che sono stati visitati dal test Robo.

Risultati dei test di instrumentazione partizionati

Per aiutarti a interpretare i risultati dei test di instrumentazione, Test Lab separa ogni test nella propria pagina di report dettagliata, completa di analisi dello stack, log e video. Questa funzionalità funziona indipendentemente dal fatto che tu stia utilizzando Android Orchestrator.

Pagina dei risultati dello scenario di test di esempio Risultati degli scenari di test

Interpretare i risultati dell'accessibilità

I test Robo utilizzano Accessibility Scanner per Android per rilevare problemi di accessibilità nella tua app (tieni presente che puoi anche eseguire una scansione localmente sul tuo dispositivo). Per istruzioni su come esaminare e interpretare i risultati di accessibilità del test Robo, visita la pagina Introduzione ad Accessibility Scanner.

Per informazioni generali su come migliorare l'accessibilità della tua app, visita la documentazione sull'accessibilità per gli sviluppatori Android.

Metriche delle prestazioni

I test eseguiti su dispositivi fisici restituiscono anche metriche delle prestazioni:

MetricaConfigurazione del dispositivo richiesta
Ora di avvio dell'appAPI 19+
Utilizzo CPUAPI 21+
Memoria utilizzata
Attività di rete
Frame al secondoAPI 21+ e include un SurfaceView

Risultati dettagliati dei test

I risultati dettagliati dei test sono disponibili per 90 giorni dopo l'esecuzione di un test e vengono archiviati in un Google Cloud Storage bucket (ma sono visibili anche nella Firebase console). Puoi visualizzare i risultati dettagliati dei test nel Cloud Storage bucket facendo clic su Risultati dei test nella pagina dei risultati dell'esecuzione del test. Quando i risultati dettagliati dei test non sono più disponibili, puoi comunque vedere quali test sono stati superati o non sono andati a buon fine.

Se vuoi conservare i risultati dettagliati dei test per più di 90 giorni, puoi inviare questi risultati dei test a un bucket Cloud Storage di tua proprietà utilizzando l'opzione a riga di comando gcloud**--results-bucket**. Puoi quindi impostare l'impostazione Età per determinare per quanto tempo i risultati vengono archiviati in tuo Cloud Storage bucket. Per informazioni su come modificare l'impostazione Età, consulta la sezione Condizioni del ciclo di vita.

Quando esegui un test, se ricevi l'errore 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).., l'entità che esegue il test potrebbe non avere l'autorizzazione corretta per il progetto. Per impostazione predefinita, Firebase crea un bucket in Google Cloud Storage, ma richiede che l'entità che esegue il test abbia il ruolo "roles/editor", che è un ruolo permissivo. Se non puoi concedere questo ruolo all'entità, puoi utilizzare l'opzione a riga di comando gcloud --results-bucket.