Sepia: ejecutar CTS estable

Esta página describe cómo ejecutar Compatibility Test Suite (CTS) para evaluar su dispositivo virtual según el código fuente de AOSP.

construir sepia

Antes de ejecutar CTS, cree el dispositivo virtual que desea probar con CTS. Para la sepia AOSP, haga lo siguiente:

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

Construir CTS

CTS se construye por separado de los artefactos de su dispositivo. Para construir CTS, siga estas instrucciones.

Desde la raíz del mismo árbol donde se construyó Cuttlefish, ejecute los siguientes comandos:

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

Lanzar instancias Cuttlefish multiinquilino

Desde la raíz del mismo árbol donde se construyó Cuttlefish, ejecute los siguientes comandos:

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

Cuando se inicien las instancias, verifique que cada uno de los dispositivos sea accesible adb .

adb devices

El resultado debería ser similar al resultado del ejemplo siguiente:

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

Habilite Wi-Fi en instancias de Cuttlefish

Algunas de las pruebas CTS fallan si la conexión Wi-Fi no está habilitada. Para habilitar Wi-Fi en todos los dispositivos Cuttlefish alojados localmente, siga estas instrucciones.

Desde la raíz del mismo árbol donde se construyó Cuttlefish, ejecute los siguientes comandos:

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

Ejecute el subconjunto estable de CTS

No todos los CTS pasan por Cuttlefish, ya que algunas de las pruebas están más adaptadas a dispositivos físicos. Para ejecutar CTS con el plan de prueba cts-virtual-device-stable que rastrea lo último que es estable en la plataforma virtual, siga estas instrucciones.

Desde la raíz del mismo árbol donde se construyó Cuttlefish, ejecute los siguientes comandos:

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

Espere que la prueba se ejecute durante 20 a 25 minutos e imprima un resumen similar al siguiente:

=============== 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 ==============

Limpiar

Cuando finalicen las pruebas, detenga los dispositivos virtuales.

Desde la raíz del mismo árbol donde se construyó Cuttlefish, ejecute los siguientes comandos:

source build/envsetup.sh
lunch aosp_cf_x86_64_phone-userdebug
stop_cvd