Ein nativer Test für die Plattform greift normalerweise auf HALs niedrigerer Ebene zu oder führt einen rohen IPC für verschiedene Systemdienste durch. Daher ist der Testansatz normalerweise eng mit dem zu testenden Dienst verbunden.
Erstellen Sie native Tests mit dem gtest- Framework. Dies ist eine Voraussetzung für die Integration in die kontinuierliche Testinfrastruktur.
Beispiele
Hier einige Beispiele für native Tests in der Plattformquelle:
Zusammenfassung der Schritte
- Siehe Beispiel für die Einrichtung eines nativen Testmoduls unter: frameworks / base / libs / hwui / tests / unit /
- Die Konfiguration des Testmoduls sollte die Build-Regel
BUILD_NATIVE_TEST
, damit gtest-Abhängigkeiten automatisch einbezogen werden - Schreiben Sie eine Testkonfiguration. Sehen Sie sich die einfachen und komplexen Optionen an.
Erstellen Sie das Testmodul mit
mmm
odermma
(abhängig davon, ob es sich um einen inkrementellen oder einen vollständigen Build handelt), z.make hwui_unit_tests -j
Verwenden Sie Atest , um den Test lokal auszuführen:
atest hwui_unit_tests
Sie können Ihren nativen Tests auch Argumente hinzufügen. Einige besonders nützliche Flags sind das
native-test-flag
, das zusätzliche Flag-Werte angibt, die an den Shell-Befehl des nativen Tests übergeben werden sollen, und dasnative-test-timeout
, mit dem Sie einen Test-Timeout-Wert in Mikrosekunden angeben können.atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \ --module-arg test-name:native-test-timeout:60000
Führen Sie den Test mit dem Testgeschirr der Trade Federation durch:
make tradefed-all -j tradefed.sh run template/local_min --template:map test=hwui_unit_tests
Manuell installieren und ausführen:
Schieben Sie die generierte Test-Binärdatei auf das Gerät:
adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \ /data/nativetest/hwui_unit_tests/hwui_unit_tests
Führen Sie den Test aus, indem Sie die Test-Binärdatei auf dem Gerät aufrufen:
adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
Dadurch wird der native Test gestartet. Sie können auch den Parameter
--help
zu Ihrer--help
hinzufügen, um mehr über die verschiedenen Möglichkeiten zum Anpassen der Testausführung zu erfahren. Weitere Parameter und deren Verwendung finden Sie im erweiterten Handbuch zu gtest .