Implementar el modo de arnés de prueba

El modo Test Harness es una función 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 por primera vez. Esto permite al usuario ejecutar una prueba de interfaz de usuario inmediatamente después del inicio sin ninguna interacción manual.

Personalización

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

Implementación

La implementación predeterminada de PersistentDataBlockManagerInternal está en PersistentDataBlockService . El modo Test Harness se implementa en TestHarnessModeService .

La implementación predeterminada del modo Test Harness utiliza el mismo mecanismo de almacenamiento que la protección de restablecimiento de fábrica para almacenar las claves adb temporalmente en una partición persistente. Si ya se implementa una partición persistente con protección de restablecimiento de fábrica en el dispositivo de prueba, se necesita poco o ningún trabajo para admitir la función.

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

Verifique el estado del modo de arnés de prueba

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

Ejecute el modo de arnés de prueba

Al habilitar el modo de arnés de prueba se borran todos los datos del dispositivo y se configura el dispositivo para realizar pruebas. Esto significa que todas las partes del dispositivo que podrían interferir con las pruebas (como cuentas de sincronización automática, verificación de paquetes y 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 arnés de prueba:

adb shell cmd testharness enable