Analizza i risultati del laboratorio di test Firebase

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

Concetti chiave

Per visualizzare i risultati di tutte le esecuzioni di test precedenti, seleziona Test Lab nel pannello di navigazione a sinistra del tuo progetto nella console Firebase. Questa pagina visualizza tutte le 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 una serie di casi di test sui dispositivi e sulle configurazioni che hai selezionato, Test Lab esegue il test sulla tua app in batch, quindi visualizza i risultati come 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 un telefono, un tablet o un dispositivo indossabile. I dispositivi in ​​una matrice di test vengono identificati in base al modello del dispositivo, alla versione del sistema operativo, all'orientamento dello schermo e alle impostazioni locali (note anche come impostazioni geografiche e linguistiche).
Test, esecuzione del test
Un test (o una serie di casi di test) da eseguire su un dispositivo. È possibile eseguire un test per dispositivo o, facoltativamente, partizionare il test ed eseguire i relativi casi di test su dispositivi diversi.
Matrice di prova
Contiene gli stati e i risultati dei test per le esecuzioni dei test. Se l'esecuzione di un test in una matrice fallisce, l'intera matrice fallisce.

Le sezioni seguenti spiegano come navigare nei risultati del test.

Interpretare i risultati della cronologia dei test

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

La cronologia dei test è raggruppata per app. Per ciascuna app vengono mostrate solo le cinque matrici di test più recenti; se ne sono disponibili altre, è possibile fare clic sul collegamento Tutte le matrici nella parte inferiore dell'elenco dei test delle app per visualizzare l'elenco completo dell'app.

Interpretare i risultati della matrice del test

Quando si avvia un test tramite l'interfaccia utente di Test Lab , si viene reindirizzati a una pagina in cui è possibile visualizzare la matrice del test e fare clic su un'esecuzione specifica del test per visualizzare i risultati del test. Android Studio e il comando gcloud forniscono anche un URL per la pagina dei risultati della matrice di test.

In una tipica matrice di test, 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:

  • PassatoTest superato : Non è stato riscontrato alcun errore.
  • FallitoProva fallita : si è verificato almeno un errore.
  • InconcludenteTest superato : I risultati del test non sono stati conclusivi, probabilmente a causa di un errore del laboratorio di test.
  • SaltatoTest superato : i valori delle dimensioni selezionate per alcune esecuzioni di test nella matrice erano incompatibili. 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 per una determinata app nel tuo progetto Firebase, fai clic sul nome dell'app, come mostrato nell'esempio seguente:

Esempio di pagina dei risultati della matrice di test con solo quattro esecuzioni di test Risultati della matrice del test

Questo ti porta all'elenco delle matrici di test per la tua app, dove puoi fare clic sul nome di qualsiasi matrice di test per vedere i risultati della matrice di test e dove puoi fare clic sul nome dell'app (mostrato nella casella rossa di seguito) per visualizzare il elenco delle matrici di test per altre app associate al tuo progetto Firebase.

Esempio di pagina di elenco della matrice di testElenco delle matrici di test

Una matrice di test può passare, fallire o essere inconcludente. Una matrice di test viene visualizzata come non riuscita o inconcludente se le esecuzioni di test in quella matrice falliscono o sono inconcludenti.

Interpretare i risultati dei test Robo

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

Esempio di video con i risultati del test Robo

Risultati dei test robotici

Interpretare i risultati di una singola esecuzione di test

Dalla pagina dei risultati della matrice del test, fare clic su una delle esecuzioni del test per vedere il risultato di quella specifica esecuzione del test.

Esempio di pagina dei risultati dell'esecuzione del test Risultati dell'esecuzione del test

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

Risultati dei test sulla strumentazione partizionata

Per aiutarti a interpretare i risultati dei test strumentati, Test Lab separa ciascun test nella propria pagina di report dettagliata, completa di analisi dello stack, registri e video. Questa funzionalità funziona indipendentemente dal fatto che utilizzi Android Orchestrator o meno.

Esempio di pagina dei risultati del test Risultati del test

Interpretare i risultati di accessibilità

I test Robo 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 rivedere e interpretare i risultati di accessibilità del tuo test Robo, visita Inizia con Accessibility Scanner .

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

Metriche delle prestazioni

I test eseguiti su dispositivi fisici restituiscono anche parametri prestazionali:

Metrico Configurazione del dispositivo richiesta
Orario di avvio dell'app API19+
uso della CPU API21+
Utilizzo della memoria
Attività di rete
Fotogrammi al secondo API 21+ e include SurfaceView
Prestazioni grafiche API23+

Dettagli sulle prestazioni grafiche

Il rapporto sulle prestazioni grafiche contiene statistiche su diversi parametri grafici chiave:

  • Vsync mancati: il numero di eventi Vsync mancati, diviso per il numero di fotogrammi che hanno impiegato più di 16 ms per il rendering.
  • Latenza di input elevata: il numero di eventi di input che hanno richiesto più di 24 ms, diviso per il numero di frame che hanno richiesto più di 16 ms per il rendering.
  • Thread dell'interfaccia utente lento: il numero di volte in cui il thread dell'interfaccia utente ha impiegato più di 8 ms per essere completato, diviso per il numero di frame che hanno impiegato più di 16 ms per il rendering.
  • Comandi di disegno lenti: il numero di volte in cui l'invio dei comandi di disegno alla GPU ha richiesto più di 12 ms, diviso per il numero di fotogrammi che hanno impiegato più di 16 ms per il rendering.
  • Caricamenti bitmap lenti: il numero di volte in cui la bitmap ha impiegato più di 3,2 ms per caricarsi sulla GPU diviso per il numero di fotogrammi che hanno impiegato più di 16 ms per il rendering.
  • Tempo di rendering: la distribuzione dei tempi di rendering per ciascun fotogramma dell'esecuzione del test. Tempi di rendering superiori a 32 millisecondi causano un rallentamento percepibile dell'interfaccia utente. Tempi di rendering superiori a 700 indicano fotogrammi congelati. I dati di rendering vengono raccolti da dumpsys graphicsstats .

Risultati dettagliati dei test

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

Per conservare i risultati dettagliati dei test per più di 90 giorni, devi inviarli a un bucket Cloud Storage di tua proprietà utilizzando l' opzione della riga di comando --results-bucket gcloud . Puoi quindi configurare l'impostazione Età per determinare per quanto tempo i risultati verranno archiviati nel bucket Cloud Storage. Consulta Condizioni del ciclo di vita per informazioni su come modificare l'impostazione Età .