تنفيذ وضع تسخير الاختبار

يُعد Test Harness Mode ميزة مضافة في Android 10 لمطوري تطبيقات الجهات الخارجية الذين يرغبون في أتمتة جهاز أو مجموعة من الأجهزة. توفر ميزة طريقة لمسح كافة بيانات المستخدم على جهاز الروبوت، والاحتفاظ مفاتيح ADB، وتخطي جميع الشاشات الإعداد لأول مرة. يتيح ذلك للمستخدم تشغيل اختبار واجهة المستخدم فور بدء التشغيل دون أي تفاعل يدوي.

التخصيص

يمكنك تحديد ما إذا كان الجهاز في تسخير وضع اختبار عن طريق فحص ActivityManager.isRunningInUserTestHarness() . حافظ على التخصيصات إلى الحد الأدنى ؛ قصر على أشياء مثل تخطي شاشات الإعداد (على لوحة المفاتيح أو معالج الإعداد) التي من شأنها كسر اختبارات واجهة المستخدم أو تتطلب تفاعلًا يدويًا.

تطبيق

تطبيق الافتراضي PersistentDataBlockManagerInternal في PersistentDataBlockService . يتم تنفيذ اختبار تسخير الوضع في TestHarnessModeService .

يستخدم التنفيذ الافتراضي لـ Test Harness Mode نفس آلية التخزين مثل Factory Reset Protection لتخزين مفاتيح ADB مؤقتًا في قسم دائم. إذا تم تنفيذ قسم دائم مع حماية إعادة ضبط المصنع بالفعل على جهاز الاختبار ، فلا يلزم عمل سوى القليل من العمل لدعم الميزة.

مصنعي المعدات الأصلية التي ليس لديها مجموعة التقسيم المستمر حتى الحاجة إلى تنفيذ PersistentDataBlockManagerInternal قبل تشغيل TestHarnessModeService .

التحقق من حالة وضع تسخير الاختبار

عند تمكين اختبار تسخير الوضع، ActivityManager.isRunningInUserTestHarness() يعود true .

تشغيل وضع اختبار تسخير

يؤدي تمكين وضع تسخير الاختبار إلى مسح جميع البيانات من الجهاز وإعداد الجهاز للاختبار. هذا يعني أن جميع أجزاء الجهاز التي يمكن أن تتداخل مع الاختبار (مثل حسابات المزامنة التلقائية والتحقق من الحزمة والتحديثات التلقائية) يتم تعطيلها افتراضيًا ولكن قد يعيد المستخدم تمكينها.

تشغيل adb الأوامر لتمكين اختبار تسخير الوضع:

adb shell cmd testharness enable