Mode Test Harness adalah fitur yang ditambahkan di Android 10 untuk developer aplikasi pihak ketiga yang ingin mengotomatiskan perangkat atau sekumpulan perangkat. Fitur ini menyediakan metode untuk menghapus semua data pengguna di perangkat Android, mempertahankan kunci ADB, dan melewati semua layar penyiapan pertama kali. Hal ini memungkinkan pengguna menjalankan pengujian UI segera setelah startup tanpa interaksi manual apa pun.
Penyesuaian
Anda dapat menentukan apakah perangkat berada dalam Mode Test Harness dengan memeriksa
ActivityManager.isRunningInUserTestHarness()
. Pertahankan penyesuaian seminimal mungkin;
batasi pada hal-hal seperti melewati layar penyiapan (di keyboard atau wizard penyiapan) yang akan merusak
pengujian UI atau memerlukan interaksi manual.
Implementasi
Implementasi default PersistentDataBlockManagerInternal
ada di PersistentDataBlockService
.
Mode Tes Otomatis diterapkan di TestHarnessModeService
.
Implementasi default Mode Test Harness menggunakan mekanisme penyimpanan yang sama dengan perlindungan reset ke setelan pabrik untuk menyimpan kunci adb sementara di partisi persisten. Jika partisi persisten dengan perlindungan reset ke setelan pabrik sudah diterapkan di perangkat pengujian, Anda tidak perlu melakukan banyak tindakan untuk mendukung fitur ini.
OEM yang tidak menyiapkan partisi persisten perlu menerapkan
PersistentDataBlockManagerInternal
sebelum menjalankan
TestHarnessModeService
.
Memeriksa status Mode Tes Otomatis
Jika Mode Tes Otomatis diaktifkan,
ActivityManager.isRunningInUserTestHarness()
akan menampilkan true
.
Menjalankan Mode Tes Otomatis
Mengaktifkan Mode Test Harness akan menghapus semua data dari perangkat dan menyiapkan perangkat untuk pengujian. Artinya, semua bagian perangkat yang dapat mengganggu pengujian (seperti akun sinkronisasi otomatis, verifikasi paket, dan update otomatis) dinonaktifkan secara default tetapi pengguna dapat mengaktifkannya kembali.
Jalankan perintah adb
untuk mengaktifkan Mode Tes Otomatis:
adb shell cmd testharness enable