На этой странице описывается, как запустить набор тестов совместимости (CTS) для оценки вашего виртуального устройства на основе исходного кода AOSP.
Строительство каракатицы
Перед запуском CTS создайте виртуальное устройство, которое вы хотите протестировать с помощью CTS. Для AOSP Cuttlefish выполните следующие действия:
source build/envsetup.shlunch aosp_cf_x86_64_phone-userdebugmake -j
Строительство ЦТС
CTS создается отдельно от артефактов вашего устройства. Чтобы построить CTS, следуйте этим инструкциям.
Из корня того же дерева, где была построена Cuttlefish, выполните следующие команды:
source build/envsetup.shm -j cts WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY=false TARGET_PRODUCT=aosp_x86_64
Запуск мультитенантных инстансов Cuttlefish
Из корня того же дерева, где была построена Cuttlefish, выполните следующие команды:
source build/envsetup.shlunch aosp_cf_x86_64_phone-userdebuglaunch_cvd --num_instances=8 --daemon
При запуске экземпляров убедитесь, что каждое из устройств доступно для adb .
adb devices
Вывод должен быть похож на приведенный ниже пример вывода:
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
Включение Wi-Fi на инстансах Cuttlefish
Некоторые тесты CTS завершаются неудачно, если Wi-Fi не включен. Чтобы включить Wi-Fi на всех локально размещенных устройствах Cuttlefish, следуйте этим инструкциям.
Из корня того же дерева, где была построена Cuttlefish, выполните следующие команды:
for SERIAL in adb devices | grep -E '127.+device$ | cut -f1'; doadb -s ${SERIAL} install -r -g tools/tradefederation/core/res/apks/wifiutil/WifiUtil.apkadb -s ${SERIAL} shell su root svc wifi enableadb -s ${SERIAL} shell am instrument -e method "connectToNetwork" -e scan_ssid "false" -e ssid "VirtWifi" -w com.android.tradefed.utils.wifi/.WifiUtildone
Запуск стабильного подмножества CTS
Не все тесты CTS проходят на Cuttlefish, так как некоторые тесты больше ориентированы на физические устройства. Чтобы запустить CTS с планом тестирования cts-virtual-device-stable , который отслеживает последние стабильные версии на виртуальной платформе, следуйте этим инструкциям.
Из корня того же дерева, где была построена Cuttlefish, выполните следующие команды:
source build/envsetup.shlunch aosp_cf_x86_64_phone-userdebugcts-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
Ожидайте, что тест будет выполняться от 20 до 25 минут, и распечатайте сводку, подобную следующей:
=============== 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 ==============
Очистка
Когда тесты будут выполнены, остановите виртуальные устройства.
Из корня того же дерева, где была построена Cuttlefish, выполните следующие команды:
source build/envsetup.shlunch aosp_cf_x86_64_phone-userdebugstop_cvd