Implementare la modalità Test Harness

Modalità test Harness è una funzionalità aggiunta in Android 10 per sviluppatori di app di terze parti che vogliono per automatizzare un dispositivo o un parco dispositivi. La funzionalità fornisce un metodo per cancellare tutti dati utente su un dispositivo Android, conservano le chiavi ADB e salta tutte le schermate di configurazione iniziale. Ciò consente all'utente di eseguire un test dell'interfaccia utente subito dopo l'avvio, senza alcuna interazione manuale.

Personalizzazione

Puoi determinare se un dispositivo si trova in modalità Test Harness controllando ActivityManager.isRunningInUserTestHarness(). Riduci al minimo le personalizzazioni. limitare il rischio, ad esempio, di saltare le schermate di configurazione (sulla tastiera o sulla configurazione guidata) che potrebbero non funzionare Test dell'interfaccia utente o richiesta di interazione manuale.

Implementazione

L'implementazione predefinita di PersistentDataBlockManagerInternal è in PersistentDataBlockService. La modalità di test Harness è implementata in TestHarnessModeService.

L'implementazione predefinita della modalità test Harness utilizza lo stesso meccanismo di archiviazione della protezione ripristino dati di fabbrica per archiviare temporaneamente le chiavi adb in una partizione permanente. Se una partizione permanente con protezione ripristino dati di fabbrica è già implementata sul dispositivo di test. il cui supporto richiede poco o nessun lavoro.

Gli OEM che non hanno configurato una partizione permanente devono implementare PersistentDataBlockManagerInternal prima di eseguire TestHarnessModeService.

Controllare lo stato della modalità Test Harness

Quando è attiva la modalità test Harness, ActivityManager.isRunningInUserTestHarness() restituisce true.

Esegui modalità test Harness

L'attivazione della modalità Test Harness cancella tutti i dati dal dispositivo e la configura per test. Ciò significa che tutte le parti del dispositivo che potrebbero interferire con il test (come gli account con sincronizzazione automatica, la verifica del pacchetto e gli aggiornamenti automatici) sono tutti disattivati per impostazione predefinita ma l'utente può riattivarle.

Esegui il comando adb per abilitare la modalità Test Harness:

adb shell cmd testharness enable