Bei Verhaltenstests für die Benutzeroberfläche wird die UI-Hierarchie analysiert, um Aussagen über die Eigenschaften der UI-Elemente zu treffen.
Jetpack-Frameworks
Jetpack enthält verschiedene Frameworks, die APIs zum Schreiben von UI-Tests bereitstellen:
- Das Espresso-Testframework (Android 4.0.1, API-Level 14 oder höher) bietet APIs zum Schreiben von UI-Tests, um Nutzerinteraktionen mit Views in einer einzelnen Ziel-App zu simulieren. Ein wichtiger Vorteil von Espresso ist die automatische Synchronisierung von Testaktionen mit der Benutzeroberfläche der getesteten App. Espresso erkennt, wenn der Haupt-Thread inaktiv ist, sodass Ihre Testbefehle zur richtigen Zeit ausgeführt werden können. Dadurch wird die Zuverlässigkeit Ihrer Tests verbessert.
- Jetpack Compose (Android 5.0, API-Level 21 oder höher) bietet eine Reihe von Test-APIs, mit denen Compose-Bildschirme und ‑Komponenten gestartet und damit interagiert werden können. Interaktionen mit „Compose“-Elementen werden mit Tests synchronisiert und haben vollständige Kontrolle über Zeit, Animationen und Neuzusammensetzungen.
- UI Automator (Android 4.3, API-Level 18 oder höher) ist ein UI-Test-Framework, das sich für funktionale UI-Tests für mehrere Apps in System- und installierten Apps eignet. Mit den UI Automator APIs können Sie auf einem Testgerät beispielsweise das Menü „Einstellungen“ oder den App Launcher öffnen.
- Mit Robolectric (Android 4.1, API-Level 16 oder höher) können Sie lokale Tests erstellen, die auf Ihrer Workstation oder Continuous Integration-Umgebung in einer regulären JVM statt in einem Emulator oder Gerät ausgeführt werden. Es kann Espresso- oder Compose-Test-APIs verwenden, um mit UI-Komponenten zu interagieren.
Weitere Informationen
Weitere Informationen zum Erstellen von UI-Tests finden Sie in den folgenden Ressourcen.