El modo de agente de prueba es una función que se agregó en Android 10 para desarrolladores de apps de terceros que deseen para automatizar un dispositivo o una flota de dispositivos. La función proporciona un método para limpiar todo. del usuario en un dispositivo Android, retiene las claves ADB y omite todas las pantallas de configuración inicial. Esto permite al usuario ejecutar una prueba de IU inmediatamente después del inicio sin ninguna interacción manual.
Personalización
Para saber si un dispositivo está en modo de agente de prueba, consulta
ActivityManager.isRunningInUserTestHarness()
Mantén las personalizaciones al mínimo. limita a acciones como omitir pantallas de configuración (en el teclado o el asistente de configuración) que podrían interrumpir las pruebas de la IU o requerir interacción manual.
Implementación
La implementación predeterminada de PersistentDataBlockManagerInternal
se encuentra en PersistentDataBlockService
.
El modo de agente de prueba se implementa en TestHarnessModeService
.
La implementación predeterminada del modo de agente de prueba usa el mismo mecanismo de almacenamiento que protección contra el restablecimiento de la configuración de fábrica para almacenar las claves adb temporalmente en una partición persistente. Si una Ya se implementó una partición persistente con protección contra el restablecimiento de la configuración de fábrica en el dispositivo de prueba. se necesita poco o nada de trabajo para admitir la función.
Los OEMs que no tienen una partición persistente configurada deben implementar PersistentDataBlockManagerInternal
antes de ejecutar TestHarnessModeService
.
Verifica el estado del modo de agente de prueba
Cuando se habilita el modo de agente de prueba, ActivityManager.isRunningInUserTestHarness()
muestra true
.
Ejecutar el modo de agente de prueba
Si habilitas el modo de agente de prueba, se borrarán todos los datos del dispositivo y se configurará para lo siguiente: y pruebas. Esto significa que todas las partes del dispositivo que podrían interferir en las pruebas (como las cuentas de sincronización automática, la verificación de paquetes y las actualizaciones automáticas) están inhabilitadas de forma predeterminada, pero el usuario puede volver a habilitarlas.
Ejecuta el comando adb
para habilitar el modo de agente de prueba:
adb shell cmd testharness enable