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, la UI Test Lab nella console Firebase e l'API Testing. Indipendentemente da come scegli di iniziare i test, i risultati vengono memorizzati nel progetto Firebase che specifichi. Puoi esplorare i risultati utilizzando l'API ToolResults, oltre a uno qualsiasi degli strumenti sopra indicati. Questa pagina descrive come esaminare e analizzare i risultati del test.

Concetti fondamentali

Per visualizzare i risultati di tutte le esecuzioni di test precedenti, seleziona Test Lab nel riquadro di navigazione a sinistra del tuo progetto nella console Firebase. Questa pagina mostra tutte le esecuzioni di test delle app che hai testato con il tuo progetto utilizzando Test Lab.

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

Quando esegui un test o un insieme di scenari di test su dispositivi e configurazioni che hai selezionato, Test Lab esegue il test sulla tua app in batch, quindi mostra 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 da modello del dispositivo, versione del sistema operativo, orientamento dello schermo e 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 oppure, se vuoi, puoi 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 dei test. Se l'esecuzione di un 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 del test selezionando Test Lab, vedi i risultati dei test che hai eseguito 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 dell'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, viene visualizzata una pagina in cui puoi vedere la matrice di test e fare clic su una specifica esecuzione del test per visualizzare i risultati. 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 dozzina di dispositivi diversi. Ogni esecuzione del test può avere un risultato diverso. I possibili risultati per qualsiasi esecuzione di test in una matrice di test includono quanto segue:

  • Superato Test superato: non sono stati riscontrati errori.
  • Non riuscito Test non riuscito: si è verificato almeno un errore.
  • Test superato non conclusivo: i risultati del test non sono stati conclusivi, probabilmente a causa di un errore Test Lab.
  • Test superato ignorato: i valori delle dimensioni selezionati per alcune esecuzioni di test nella matrice non erano compatibili. Questo errore 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 per una determinata app nel tuo 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 del test Risultati della matrice di test

In questo modo si apre l'elenco delle matrici di test per la tua app, dove puoi fare clic sul nome di una matrice di test per visualizzarne i risultati e dove puoi fare clic sul nome dell'app (mostrato nel riquadro rosso 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ò superare il test, non superarlo o essere inconcludente. Una matrice di test viene visualizzata come non riuscita o senza risultati se una delle esecuzioni di test nella matrice non riesce o non dà risultati.

Interpretare i risultati del test Robo

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

Video di esempio dei risultati del test Robo

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 di test per visualizzare il risultato di quella specifica esecuzione.

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 di casi di test specifici che corrispondono ai metodi nell'APK di test (per i test di strumentazione) e i risultati dettagliati dei test, inclusi log, screenshot e video. Per il test Robo, i risultati dettagliati del test includono anche una mappa delle attività che mostra graficamente i percorsi dell'interfaccia utente visitati dal test Robo.

Risultati del test di instrumentazione partizionato

Per aiutarti a interpretare i risultati dei test strumentati, Test Lab separa ogni test nella propria pagina di report dettagliato, completa di analisi dello stack, log e video. Questa funzionalità è disponibile indipendentemente dall'utilizzo di Android Orchestrator.

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

Interpretare i risultati di accessibilità

I Robo test utilizzano Android Accessibility Scanner 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 Robo test, visita la pagina Guida introduttiva 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 sul rendimento:

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

Risultati del test dettagliati

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

Se vuoi conservare i risultati dettagliati dei test per più di 90 giorni, puoi inviarli 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 nel bucket Cloud Storage. Consulta la sezione Condizioni del ciclo di vita per informazioni su come modificare l'impostazione Età.

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).., il principal che esegue il test potrebbe non disporre dell'autorizzazione corretta per il progetto. Per impostazione predefinita, Firebase crea un bucket in Google Cloud Storage, ma richiede che il principal che esegue il test disponga del ruolo "roles/editor", che è un ruolo permissivo. Se non riesci a concedere questo ruolo al principal, puoi utilizzare l'opzione della riga di comando gcloud --results-bucket.