Esecuzione di test con Android Studio

Firebase Test Lab fornisce un'infrastruttura cloud per testare Android app e offre la piena integrazione con Android Studio per l'esecuzione test strumentati ed esaminare i risultati dei test.

Questa guida descrive come modificare i test strumentati in Android Studio per: può integrarle ed eseguirle con Test Lab. Per istruzioni sull'utilizzo Test Lab dall'interfaccia utente di Android Studio per creare una matrice di test, esegui un test instrumentato e visualizzare i risultati del test, vedere Esegui i test con Firebase Test Lab.

Acquisisci screenshot

Test Lab fornisce il supporto per l'acquisizione di screenshot durante l'esecuzione test strumentati. Per scoprire come acquisire screenshot, consulta: Aggiungi la raccolta di screenshot al progetto.

Creare test utilizzando Espresso Test Recorder

Lo strumento Espresso Test Recorder ti consente di creare test UI per la tua app senza dover scrivere codice di test. Puoi registrare le tue interazioni con un dispositivo e aggiungere per verificare gli elementi UI in determinate istantanee della tua app. Caffè espresso Registratore di prova acquisisce la registrazione salvata e genera automaticamente test UI Espresso corrispondente che puoi eseguire per testare la tua app in Test Lab.

Per saperne di più, consulta Creare test UI con Espresso Test Recorder.

Modifica il comportamento del test con gli strumenti per Test Lab

Test Lab fornisce una variabile di sistema che puoi aggiungere agli strumenti in modo che tu possa causare un comportamento diverso quando li esegui Test Lab rispetto a quando li esegui sul tuo emulatore o dispositivo di test.

L'esempio di codice seguente legge una proprietà di sistema, firebase.test.lab, e imposta una stringa, da testLabSetting a true se il test è in esecuzione in Test Lab. Quindi, utilizza il valore di questa stringa per controllare se vengono eseguite altre istruzioni:

Kotlin+KTX

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
    // ...
}

Usa i dispositivi gestiti 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 automatici con strumenti su larga scala su Test Lab dispositivi, in base alle configurazioni nei file Gradle del progetto.

I dispositivi gestiti Gradle offrono inoltre lo sharding intelligente, che consente di distribuire i test in modo ottimale sugli shard in base alla cronologia dei test precedente. Con lo sharding intelligente, i frammenti vengono eseguiti per circa lo stesso periodo di tempo e restituiscono i risultati del test il più rapidamente possibile. Lo sharding intelligente ti consente di eseguire in parallelo suite di test di grandi dimensioni, rendendo questa funzionalità particolarmente adatta ai flussi CI/CD.

Per attivare lo sharding intelligente utilizzando il plug-in Test Lab dei dispositivi gestiti Gradle, segui le istruzioni in Ottimizza le esecuzioni di test con partizionamento orizzontale di Google.