Firebase Test Lab fornisce un'infrastruttura basata su cloud per testare le app per Android e offre un'integrazione completa con Android Studio per l'esecuzione di test di instrumentazione e la revisione dei risultati dei test.
Questa guida descrive come modificare i test di instrumentazione in Android Studio in modo da poterli integrare ed eseguire con Test Lab. Per istruzioni su come utilizzare Test Lab dall'interfaccia utente di Android Studio per creare una matrice di test, eseguire un test di instrumentazione e visualizzare i risultati del test, consulta Esegui i test con Firebase Test Lab.
Acquisisci screenshot
Test Lab fornisce supporto per l'acquisizione di screenshot durante l'esecuzione di test di instrumentazione. Per scoprire come acquisire screenshot, consulta Aggiungi la libreria di screenshot al progetto.
Crea test utilizzando Espresso Test Recorder
Lo strumento Espresso Test Recorder ti consente di creare test della UI per la tua app senza scrivere codice di test. Puoi registrare le tue interazioni con un dispositivo e aggiungere asserzioni per verificare gli elementi UI in particolari istantanee della tua app. Espresso Test Recorder prende quindi la registrazione salvata e genera automaticamente un test UI Espresso corrispondente che puoi eseguire per testare la tua app in Test Lab.
Per saperne di più, consulta Crea test della UI con Espresso Test Recorder.
Modifica il comportamento del test di instrumentazione per Test Lab
Test Lab fornisce una variabile di sistema che puoi aggiungere ai test di instrumentazione in modo da farli comportare in modo diverso quando li esegui in Test Lab rispetto a quando li esegui sul tuo dispositivo di test o emulatore.
Il seguente esempio di codice legge una proprietà di sistema, firebase.test.lab, e imposta una stringa, testLabSetting su true se il test è in esecuzione in Test Lab.
Poi, utilizza il valore di questa stringa per controllare se vengono eseguite istruzioni aggiuntive:
Kotlin
val testLabSetting = Settings.System.getString(contentResolver, "firebase.test.lab") if ("true" == testLabSetting) { // Do something when running in Test Lab // ... }
Java
String testLabSetting = Settings.System.getString(getContentResolver(), "firebase.test.lab"); if ("true".equals(testLabSetting)) { // Do something when running in Test Lab // ... }
Utilizza i dispositivi gestiti da Gradle tramite il plug-in Firebase Test Lab
I dispositivi gestiti da Gradle tramite il plug-in Firebase Test Lab ti consentono di eseguire test di strumentazione automatizzati su larga scala su dispositivi Test Lab, in base alle configurazioni nei file Gradle del progetto.
I dispositivi gestiti da Gradle offrono anche lo sharding smart, che ti consente di distribuire i test in modo ottimale tra gli shard in base alla cronologia dei test precedenti. Con lo sharding intelligente, gli shard vengono eseguiti per circa lo stesso periodo di tempo e restituiscono i risultati dei test il più rapidamente possibile. Lo sharding intelligente consente di eseguire suite di test di grandi dimensioni in parallelo, il che rende questa funzionalità particolarmente adatta ai flussi CI/CD.
Per attivare lo sharding smart utilizzando il plug-in Dispositivi gestiti da Gradle Test Lab, segui le istruzioni riportate in Ottimizza le esecuzioni dei test con lo sharding smart.