Implementación del modo de arnés de prueba

Test Harness Mode es una característica agregada en Android 10 para desarrolladores de aplicaciones de terceros que desean automatizar un dispositivo o una flota de dispositivos. La función proporciona un método para borrar todos los datos del usuario en un dispositivo Android, conservar las claves ADB y omitir todas las pantallas de configuración iniciales. Esto permite al usuario ejecutar una prueba de IU inmediatamente después del inicio sin ninguna interacción manual.

personalización

Puede determinar si un dispositivo está en modo de prueba de arnés comprobando ActivityManager.isRunningInUserTestHarness() . Mantenga las personalizaciones al mínimo; limite a cosas como omitir pantallas de configuración (en el teclado o en el asistente de configuración) que romperían las pruebas de IU o requerirían una interacción manual.

Implementación

La implementación predeterminada de PersistentDataBlockManagerInternal está en PersistentDataBlockService . El modo de prueba de arnés se implementa en TestHarnessModeService .

La implementación predeterminada de Test Harness Mode utiliza el mismo mecanismo de almacenamiento que Factory Reset Protection para almacenar las claves ADB temporalmente en una partición persistente. Si ya se implementó una partición persistente con Factory Reset Protection en el dispositivo de prueba, se necesita poco o ningún trabajo para admitir la función.

Los OEM que no tienen configurada una partición persistente deben implementar PersistentDataBlockManagerInternal antes de ejecutar TestHarnessModeService .

Comprobación del estado del modo de arnés de prueba

Cuando el Modo de prueba de arnés está habilitado, ActivityManager.isRunningInUserTestHarness() devuelve true .

Ejecución del modo de arnés de prueba

Habilitar el modo de arnés de prueba borra todos los datos del dispositivo y configura el dispositivo para la prueba. Esto significa que todas las partes del dispositivo que podrían interferir con las pruebas (como la sincronización automática de cuentas, la verificación de paquetes y las actualizaciones automáticas) están deshabilitadas de forma predeterminada, pero el usuario puede volver a habilitarlas.

Ejecute el comando adb para habilitar el modo de prueba de arnés:

adb shell cmd testharness enable