Damit Tests in einen Continuous Testing-Dienst einer Plattform integriert werden können, müssen sie den Richtlinien auf dieser Seite entsprechen und diesem empfohlenen Ablauf folgen.
- Verwenden Sie das Soong-Build-System für die einfache Testkonfiguration.
- Verwenden Sie Test Mapping, um Testregeln vor und nach dem Einreichen direkt im Android-Quellbaum zu erstellen.
- Tests lokal mit Atest ausführen
Testtypen
Folgende Testtypen werden unterstützt:
- Instrumentierte Tests unterstützen sowohl Funktions- als auch Messwerttests. Allgemeine Informationen zum Testen von Apps
- GoogleTest (GTest) unterstützt die folgenden Testtypen:
- Funktionale GTests mit dem GTest-Framework
- Messwerttests mit
google-benchmark
- JAR-Hosttests mit JUnit
Bei Funktionstests werden Testläufe als bestanden oder nicht bestanden bewertet, während bei Messwerttests in der Regel eine Aktion wiederholt ausgeführt wird, um Zeitmesswerte zu erfassen.
Durch das standardisierte Ein-/Ausgabeformat entfällt die Notwendigkeit einer benutzerdefinierten Ergebnisaufbereitung und Nachbearbeitung pro Test. Außerdem können generische Testharnesses für alle Tests verwendet werden, die der Konvention entsprechen. Informationen zum kontinuierlichen Testframework, das in Android enthalten ist, finden Sie in der Trade Federation-Übersicht.
Richtlinien für Testläufe
Testläufe, die über den Continuous Testing-Dienst ausgeführt werden, müssen hermetisch sein. Das bedeutet, dass alle Abhängigkeiten deklariert und mit den Tests bereitgestellt werden. Weitere Informationen zu diesem Grundsatz finden Sie im Google Testing-Blog. Kurz gesagt: Für hermetische Tests ist keine der folgenden Voraussetzungen erforderlich:
- Anmeldung im Google-Konto
- Konnektivität konfiguriert (Telefonie/WLAN/Bluetooth/NFC)
- Übergebene Testparameter
- Einrichtung oder Abbau, die vom Test-Harness für einen bestimmten Testlauf durchgeführt werden