Tests mit Android Studio ausführen

Firebase Test Lab bietet eine cloudbasierte Infrastruktur für das Testen von Android Apps und ist vollständig in Android Studio integriert, sodass Sie instrumentierte Tests ausführen und Testergebnisse überprüfen können.

In dieser Anleitung wird beschrieben, wie Sie instrumentierte Tests in Android Studio ändern, damit Sie sie in Test Lab einbinden und ausführen können. Eine Anleitung zur Verwendung von Test Lab über die Android Studio-UI zum Erstellen einer Testmatrix, zum Ausführen eines instrumentierten Tests und zum Ansehen der Testergebnisse finden Sie unter Tests mit Firebase Test Lab ausführen.

Screenshots aufnehmen

Test Lab unterstützt das Aufnehmen von Screenshots beim Ausführen instrumentierter Tests. Informationen zum Aufnehmen von Screenshots finden Sie unter Screenshot-Bibliothek zum Projekt hinzufügen.

Tests mit Espresso Test Recorder erstellen

Mit dem Tool Espresso Test Recorder können Sie UI-Tests für Ihre App erstellen, ohne Testcode schreiben zu müssen. Sie können Ihre Interaktionen mit einem Gerät aufzeichnen und Zusicherungen hinzufügen, um UI-Elemente in bestimmten Momentaufnahmen Ihrer App zu überprüfen. Espresso Test Recorder verwendet dann die gespeicherte Aufzeichnung und generiert automatisch einen entsprechenden Espresso-UI-Test, den Sie ausführen können, um Ihre App in Test Lab zu testen.

Weitere Informationen finden Sie unter UI-Tests mit Espresso Test Recorder erstellen.

Verhalten instrumentierter Tests für Test Lab ändern

Test Lab bietet eine Systemvariable, die Sie Ihren instrumentierten Tests hinzufügen können, damit sie sich bei der Ausführung in Test Lab anders verhalten als bei der Ausführung auf Ihrem eigenen Testgerät oder Emulator.

Im folgenden Codebeispiel wird eine Systemeigenschaft, firebase.test.lab, gelesen und ein String, testLabSetting, auf true gesetzt, wenn der Test in Test Lab ausgeführt wird. Anschließend wird der Wert dieses Strings verwendet, um zu steuern, ob zusätzliche Anweisungen ausgeführt werden:

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

Von Gradle verwaltete Geräte über das Firebase Test Lab Plug-in verwenden

Mit von Gradle verwalteten Geräten über das Firebase Test Lab Plug-in können Sie automatisierte instrumentierte Tests in großem Maßstab auf Test Lab Geräten ausführen, basierend auf den Konfigurationen in den Gradle-Dateien Ihres Projekts.

Von Gradle verwaltete Geräte bieten auch Smart Sharding, mit dem Sie Tests basierend auf Ihrem bisherigen Testverlauf optimal auf Shards verteilen können. Mit Smart Sharding werden Shards ungefähr gleich lang ausgeführt und liefern so schnell wie möglich Testergebnisse. Mit Smart Sharding können Sie große Test-Suites parallel ausführen. Daher eignet sich diese Funktion gut für CI/CD-Abläufe.

Wenn Sie Smart Sharding mit dem Test Lab-Plug-in für von Gradle verwaltete GeräteTest Lab aktivieren möchten, folgen Sie der Anleitung unter Testläufe mit Smart Sharding optimieren .