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'interfaccia utente di Test Lab nella console Firebase e l'API Testing. Indipendentemente da come 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 qualsiasi degli strumenti sopra indicati. Questa pagina descrive come esaminare e analizzare i risultati di questi test.
Concetti fondamentali
Nella console Firebase, puoi visualizzare i risultati di tutte le esecuzioni di test precedenti andando su DevOps e coinvolgimento > Test Lab. In questa pagina vengono visualizzati tutti i risultati dettagliati delle esecuzioni dei 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 che hai selezionato, Test Lab esegue il test sulla tua app in un batch, quindi visualizza i risultati sotto forma di matrice di test.
Dispositivi × Esecuzioni dei 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, 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 delle esecuzioni dei 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.
Interpreta i risultati della cronologia dei test
Quando accedi ai risultati dei test selezionando Test Lab, vedrai i risultati dei test che hai eseguito finora.
La cronologia dei test è raggruppata per app. Per ogni app vengono mostrate solo le cinque matrici di test più recenti. Se ne sono disponibili altre, puoi fare clic sul link Tutte le matrici in fondo all'elenco dei test dell'app per visualizzare l'elenco completo per l'app in questione.
Interpreta i risultati della matrice di test
Quando avvii un test tramite l'interfaccia utente di Test Lab, vieni reindirizzato a una pagina in cui puoi visualizzare la matrice di test e fare clic su un'esecuzione del test specifica per visualizzare i risultati del test. Anche Android Studio e il comando gcloud forniscono un URL per la pagina dei risultati della matrice di test.
In una tipica matrice di test, 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
: non sono stati riscontrati errori. - Non riuscito
: è stato rilevato almeno un errore. - Indeterminato
: i risultati del test non sono stati conclusivi, probabilmente a causa di un errore Test Lab. - Ignorati
: i valori delle dimensioni selezionati per alcune esecuzioni dei 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 di 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

In questo modo, viene visualizzato l'elenco delle matrici di test per la tua app, dove puoi fare clic sul nome di qualsiasi matrice di test per visualizzarne i risultati 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 di esempio dell'elenco delle matrici di test

Una matrice di test può essere superata, non superata o non conclusiva. Una matrice di test viene visualizzata come non riuscita o non conclusiva se una o più esecuzioni del test nella matrice non sono riuscite o non sono conclusive.
Interpreta i risultati dei test Robo
Se hai eseguito i test con Robo, i risultati includono video e screenshot della scansione della UI da parte di Robo, oltre alle consuete metriche di test. Questi video e screenshot includono indicazioni visive delle azioni eseguite da Robo durante la scansione, simili alla funzionalità "Mostra tocchi" di Android. Puoi utilizzare le indicazioni per seguire i progressi di Robo e riprodurre eventuali bug che potrebbe rilevare.
Video di esempio dei risultati del test Robo

Interpreta 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.
Pagina di esempio dei risultati dell'esecuzione del test

In questa pagina puoi vedere il tempo necessario per l'esecuzione di ogni test. Puoi anche visualizzare i risultati di scenari di test specifici che corrispondono ai metodi nell'APK di test (per i test di instrumentazione) e i risultati dei test dettagliati, inclusi log, screenshot e video dei test. Per il test Robo, i risultati dettagliati del test includono anche una mappa delle attività che mostra graficamente i percorsi della UI 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 in una pagina di report dettagliata, completa di analisi dello stack, log e video. Questa funzionalità è disponibile indipendentemente dall'utilizzo di Android Orchestrator.
Pagina dei risultati di un test case di esempio

Interpreta i risultati di accessibilità
I test Robo utilizzano Accessibility Scanner per Android per rilevare i 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, consulta Inizia a utilizzare Accessibility Scanner.
Per informazioni generali su come migliorare l'accessibilità della tua app, consulta la documentazione sull'accessibilità per gli sviluppatori Android.
Metriche delle prestazioni
I test eseguiti su dispositivi fisici restituiscono anche metriche sul rendimento:
| Metrica | Configurazione dispositivo richiesta |
|---|---|
| Ora di avvio dell'app | API 19+ |
| Utilizzo CPU | API 21+ |
| Memoria utilizzata | |
| Attività di rete | |
| Frame al secondo | API 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 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 dei test non sono più disponibili, puoi comunque vedere quali test sono stati superati o meno.
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 della riga di comando gcloud --results-bucket. Puoi quindi configurare l'impostazione Età per determinare per quanto tempo i risultati vengono archiviati nel tuo bucket Cloud Storage. Consulta Condizioni del ciclo di vita per informazioni su come modificare l'impostazione Età.
Se durante l'esecuzione di un test 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 disporre dell'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 disponga di "roles/editor", che è un ruolo permissivo. Se non puoi concedere questo ruolo all'entità, puoi utilizzare l'opzione della riga di comando gcloud --results-bucket.