Mengimplementasikan Mode Harness Pengujian

Mode Tes Otomatis adalah fitur yang ditambahkan di Android 10 untuk developer aplikasi pihak ketiga yang ingin mengotomatiskan perangkat atau kumpulan 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.

Penyesuaian

Anda dapat menentukan apakah perangkat berada dalam Mode Tes Otomatis dengan memeriksa ActivityManager.isRunningInUserTestHarness(). Pertahankan penyesuaian seminimal mungkin; batasi hal-hal seperti melewati layar penyiapan (di keyboard atau wizard penyiapan) yang akan merusak pengujian UI atau memerlukan interaksi manual.

Penerapan

Implementasi default PersistentDataBlockManagerInternal ada di PersistentDataBlockService. Mode Tes Otomatis diimplementasikan di TestHarnessModeService.

Implementasi default Mode Tes Otomatis 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 diimplementasikan di perangkat pengujian, hanya sedikit atau tidak ada pekerjaan yang diperlukan untuk mendukung fitur ini.

OEM yang tidak memiliki partisi persisten yang disiapkan harus mengimplementasikan PersistentDataBlockManagerInternal sebelum menjalankan TestHarnessModeService.

Memeriksa status Mode Tes Otomatis

Saat Mode Tes Otomatis diaktifkan, ActivityManager.isRunningInUserTestHarness() akan menampilkan true.

Menjalankan Mode Tes Otomatis

Mengaktifkan Mode Tes Otomatis 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