GoogleTest (GTest, czasami nazywany także „testami natywnymi”) dla platformy zwykle uzyskuje dostęp do warstw HAL niższego poziomu lub przeprowadza surowe IPC w odniesieniu do różnych usług systemowych. Z tego powodu podejście do testowania jest zwykle ściśle powiązane z testowaną usługą.
Aby zintegrować się z infrastrukturą ciągłego testowania, zbuduj swoje GTesty przy użyciu struktury GTest .
Przykłady
Oto kilka przykładów GTest w źródle platformy:
Podsumowanie kroków
Postępuj zgodnie z przykładową konfiguracją modułu GTest .
Aby automatycznie uwzględnić zależności GTest, użyj reguły kompilacji
BUILD_NATIVE_TEST
w konfiguracji modułu testowego.Napisz konfigurację testową, postępując zgodnie z przykładami opcji prostych i złożonych .
Zbuduj moduł testowy z
mmm
dla kompilacji przyrostowych lubmma
dla pełnych kompilacji:make hwui_unit_tests -j
Uruchom test lokalnie za pomocą Atest :
atest hwui_unit_tests
Możesz także dodać argumenty do swoich GTestów. Oto szczególnie przydatne argumenty:
-
native-test-flag
określa dodatkowe wartości flag, które mają zostać przekazane do polecenia powłoki GTest. native-test-timeout
określa wartość limitu czasu testu w mikrosekundach.Poniższy przykładowy kod używa obu tych argumentów:
atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \ --module-arg test-name:native-test-timeout:60000
-
Przeprowadź test z uprzężą testową Federacji Handlowej:
make tradefed-all -j tradefed.sh run template/local_min --template:map test=hwui_unit_tests
Ręcznie zainstaluj i uruchom:
Prześlij wygenerowany testowy plik binarny na swoje urządzenie:
adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \ /data/nativetest/hwui_unit_tests/hwui_unit_tests
Uruchom GTest i wykonaj test, wywołując testowy plik binarny na urządzeniu:
adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
Aby uzyskać więcej informacji na temat dostosowywania wykonywania testów, dodaj parametr
--help
do pliku binarnego testu. Aby uzyskać więcej informacji na temat parametrów, zapoznaj się z zaawansowanym przewodnikiem GTest .