Test Harness Modunun Uygulanması

Test Harness Mode, bir cihazı veya bir cihaz filosunu otomatikleştirmek isteyen üçüncü taraf uygulama geliştiricileri için Android 10'a eklenen bir özelliktir. Bu özellik, bir Android cihazdaki tüm kullanıcı verilerini silmek, ADB anahtarlarını tutmak ve tüm ilk kurulum ekranlarını atlamak için bir yöntem sağlar. Bu, kullanıcının herhangi bir manuel etkileşim olmadan başlatmadan hemen sonra bir UI testi çalıştırmasını sağlar.

özelleştirme

ActivityManager.isRunningInUserTestHarness() öğesini kontrol ederek bir cihazın Test Harness Modunda olup olmadığını belirleyebilirsiniz. Özelleştirmeleri minimumda tutun; UI testlerini bozacak veya manuel etkileşim gerektirecek kurulum ekranlarını (klavyede veya kurulum sihirbazında) atlama gibi şeylerle sınırlayın.

uygulama

PersistentDataBlockManagerInternal'ın varsayılan uygulaması PersistentDataBlockManagerInternal PersistentDataBlockService . Test Harness Mode, TestHarnessModeService içinde uygulanır.

Test Harness Mode'un varsayılan uygulaması, ADB anahtarlarını kalıcı bir bölümde geçici olarak depolamak için Factory Reset Protection ile aynı depolama mekanizmasını kullanır. Test cihazında Fabrika Ayarlarına Sıfırlama Korumasına sahip kalıcı bir bölüm zaten uygulanmışsa, özelliği desteklemek için çok az veya hiç çalışma gerekmez.

Kalıcı bölüm kurulumuna sahip olmayan OEM'lerin, TestHarnessModeService çalıştırmadan önce PersistentDataBlockManagerInternal uygulamasını uygulaması gerekir.

Test Harness Modunun durumunu kontrol etme

Test Harness Mode etkinleştirildiğinde, ActivityManager.isRunningInUserTestHarness() true değerini döndürür.

Test Koşum Modunun Çalıştırılması

Test Harness Mode'un etkinleştirilmesi, cihazdaki tüm verileri siler ve cihazı test için ayarlar. Bu, cihazın teste müdahale edebilecek tüm parçalarının (hesapları otomatik eşitleme, paket doğrulama ve otomatik güncellemeler gibi) tümünün varsayılan olarak devre dışı bırakıldığı, ancak kullanıcı tarafından yeniden etkinleştirilebileceği anlamına gelir.

Test Harness Modunu etkinleştirmek için adb komutunu çalıştırın:

adb shell cmd testharness enable