Die Android Testing Support Library erreicht Version 1.0

Das Framework fasst einige Android-Test-APIs zusammen, darunter Espresso für UI-Tests und Android JUnit Runner zur Anbindung an JUnit zum Durchführen von Unit-Tests. Das gebündelte Release bringt Updates für alle APIs mit sich.

In Pocket speichern vorlesen Druckansicht
Die Android Testing Support Library erreicht Version 1.0
Lesezeit: 2 Min.
Von
  • Rainald Menge-Sonnentag

Das Android-Team hat mehrere Tools zum Testen von Android-Anwendungen als Android Testing Support Library (ATSL) zusammengefasst, die nun als Version 1.0 verfügbar ist. Das Release bringt umfangreiche Updates der vorhandenen APIs mit. So liegt das UI-Testing-Tool Espresso nun in Version 3.0 vor, JUnit Runner bringt einige Neuerungen und der neue Android Test Orchestrator hilft beim Verwalten der Testprozesse.

Espresso 3.0 kann mit Multiprocess Espresso App-Komponenten außerhalb des Standardprozesses der Anwendung parallel testen und so das Zusammenspiel der Interaktionen mit der Benutzerschnittstelle über Prozessgrenzen hinweg untersuchen. Voraussetzung dafür ist das API Level 26, also Android O, mit dem es möglich ist, Tests außerhalb des Standardprozesses von Apps zu instrumentalisieren. Die Tests sind zudem auf eine App beschränkt, da sich externe Prozesse nicht einbinden lassen. Espresso verwaltet die Synchronisation, sodass der Aufbau der einzelnen Komponenten der Multiprocess-Tests derselbe ist wie bei denen für einzelne Prozesse.

Espresso verwaltet die Kommunikation zwischen den Prozess-Instanzen.

(Bild: Google)

Außerdem hat das Team den Umgang mit sogenannten Idling Resources erweitert. Diese kommen zum Einsatz, um Hintergrundprozesse zu verwalten, die beispielsweise eigene Threads erzeugen. Espresso 3.0 bringt einige neue Vorlagen mit, darunter IdlingThreadPoolExecutor und IdlingScheduledThreadPoolExecutor zur Verwaltung von Thread Pools. Die neu eingeführte IdlingRegistry-API soll zudem das Registrieren von Ressourcen vereinfachen.

Der Android JUnitRunner erlaubt nun den Einsatz von JUnitParams für parameterisierte Tests. Mit InterceptingActivityFactory und SingleActivityFactory lassen sich Activities isoliert von ihrer Umgebung testen.

Der neue Android Test Orchestrator, der derzeit Betastatus hat, hilft bei der Isolierung der einzelnen Testprozesse. Eine weitere Neuerung ist die GrantPermissionRule, die die mit Android M eingeführten Dialoge überspringt, die zur Laufzeit nach Berechtigungen fragen und dadurch den Testablauf blockieren.

Weitere Details lassen sich den Release Notes und dem Android-Developer-Blog entnehmen. Wie sich Gradle-Dependencies zum Einsatz der ATSL setzen lassen, erklärt die Dokumentationsseite. (rme)