Cuttlefish: uruchom stabilny pakiet CTS

Na tej stronie dowiesz się, jak uruchomić pakiet Compatibility Test Suite. (CTS) w celu oceny urządzenia wirtualnego na podstawie AOSP. kodu źródłowego.

Zbuduj mątwę

Zanim uruchomisz narzędzie CTS, utwórz urządzenie wirtualne, które chcesz przetestować. W przypadku AOSP Cuttlefish wykonaj te czynności:

source build/envsetup.sh
lunch aosp_cf_x86_64_phone-userdebug
make -j

Utwórz CTS

Pakiet CTS jest tworzony niezależnie od artefaktów urządzenia. Aby utworzyć CTS, wykonaj te instrukcje.

W korzeniach tego samego drzewa, w którym została skompilowana Cuttlefish, uruchom te komendy:

source build/envsetup.sh
m -j cts WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY=false TARGET_PRODUCT=aosp_x86_64

Uruchamianie instancji wielodzierżawowych Cuttlefish

Z korzenia tego samego drzewa, gdzie zbudowano mątwę, uruchom następujące polecenie polecenia:

source build/envsetup.sh
lunch aosp_cf_x86_64_phone-userdebug
launch_cvd --num_instances=8 --daemon

Po uruchomieniu instancji sprawdź, czy wszystkie urządzenia są dostępne.

adb devices

Dane wyjściowe powinny wyglądać podobnie do tych poniżej:

List of devices attached
127.0.0.1:6520  device
127.0.0.1:6521  device
127.0.0.1:6522  device
127.0.0.1:6523  device
127.0.0.1:6524  device
127.0.0.1:6525  device
127.0.0.1:6526  device
127.0.0.1:6527  device

Włącz Wi-Fi w instancjach Cuttlefish

Niektóre testy CTS nie przechodzą, jeśli Wi-Fi jest wyłączone. Aby włączyć Wi-Fi na wszystkich urządzeniach Cuttlefish hostowanych lokalnie, wykonaj te instrukcje.

W korzeniach tego samego drzewa, w którym została skompilowana Cuttlefish, uruchom te komendy:

for SERIAL in $(adb devices | grep -E '127.+device$' | cut -f1); do
adb -s ${SERIAL} install -r -g tools/tradefederation/core/res/apks/wifiutil/WifiUtil.apk
adb -s ${SERIAL} shell su root svc wifi enable
adb -s ${SERIAL} shell am instrument -e method "connectToNetwork" -e scan_ssid "false" -e ssid "VirtWifi" -w com.android.tradefed.utils.wifi/.WifiUtil
done

Uruchamianie stabilnego podzbioru testów CTS

Nie wszystkie testy CTS zaliczają się na mątwę, bo niektóre testy są bardziej dostosowane do urządzeń fizycznych. Aby uruchomić CTS za pomocą cts-virtual-device-stableplanu testów, który śledzi najnowsze stabilne wersje na platformie wirtualnej, wykonaj te instrukcje.

W korzeniach tego samego drzewa, w którym została skompilowana Cuttlefish, uruchom te komendy:

source build/envsetup.sh
lunch aosp_cf_x86_64_phone-userdebug
cts-tradefed run cts-virtual-device-stable --no-enable-parameterized-modules --max-testcase-run-count 2 --retry-strategy RETRY_ANY_FAILURE --reboot-at-last-retry --shard-count 8

Test trwa 20–25 minut. Wydrukuj podsumowanie podobne do tego:

=============== Summary ===============
Total Run time: 22m 8s
184/184 modules completed
Total Tests       : 92483
PASSED            : 92363
FAILED            : 0
IGNORED           : 71
ASSUMPTION_FAILURE: 49
Shard 0 used: [127.0.0.1:6522]
Shard 1 used: [127.0.0.1:6525]
Shard 2 used: [127.0.0.1:6524]
Shard 3 used: [127.0.0.1:6521]
Shard 4 used: [127.0.0.1:6520]
Shard 5 used: [127.0.0.1:6527]
Shard 6 used: [127.0.0.1:6526]
Shard 7 used: [127.0.0.1:6523]
============== End of Results ==============

Uporządkuj

Po zakończeniu testów zatrzymaj urządzenia wirtualne.

Z korzenia tego samego drzewa, gdzie zbudowano mątwę, uruchom następujące polecenie polecenia:

source build/envsetup.sh
lunch aosp_cf_x86_64_phone-userdebug
stop_cvd