โหมด Test Harness เป็นฟีเจอร์ที่เพิ่มเข้ามาใน Android 10 สำหรับนักพัฒนาแอปบุคคลที่สามที่ต้องการทำให้อุปกรณ์หรือกลุ่มอุปกรณ์ทำงานอัตโนมัติ ฟีเจอร์นี้มีวิธีการล้างข้อมูลผู้ใช้ทั้งหมดในอุปกรณ์ Android, เก็บคีย์ ADB ไว้ และข้ามหน้าจอการตั้งค่าครั้งแรกทั้งหมด วิธีนี้ช่วยให้ ให้ผู้ใช้ทำการทดสอบ UI ได้ทันทีหลังจากที่เริ่มต้นระบบโดยไม่ต้องมีการโต้ตอบด้วยตนเอง
การปรับแต่ง
คุณสามารถตรวจสอบว่าอุปกรณ์อยู่ในโหมดโปรแกรมทดสอบอัตโนมัติหรือไม่จากการตรวจสอบ
ActivityManager.isRunningInUserTestHarness()
ปรับแต่งการกำหนดค่าให้น้อยที่สุด
จำกัดการดำเนินการบางอย่าง เช่น การข้ามหน้าจอการตั้งค่า (ในแป้นพิมพ์หรือวิซาร์ดการตั้งค่า) ที่อาจเกิดข้อผิดพลาด
ทดสอบ UI หรือต้องมีการโต้ตอบด้วยตนเอง
การใช้งาน
การใช้งานเริ่มต้นของ PersistentDataBlockManagerInternal
อยู่ใน PersistentDataBlockService
โหมดโปรแกรมทดสอบอัตโนมัติใช้งานใน TestHarnessModeService
แล้ว
การใช้งานเริ่มต้นของโหมดโปรแกรมทดสอบอัตโนมัติใช้กลไกพื้นที่เก็บข้อมูลเดียวกับ การป้องกันการรีเซ็ตเป็นค่าเริ่มต้นเพื่อเก็บคีย์ adb ไว้ชั่วคราวในพาร์ติชันถาวร หากมีการใช้พาร์ติชันถาวรที่มีการป้องกันการรีเซ็ตเป็นค่าเริ่มต้นในอุปกรณ์ทดสอบอยู่แล้ว คุณก็แทบไม่ต้องดำเนินการใดๆ เพื่อรองรับฟีเจอร์นี้
OEM ที่ไม่มีการตั้งค่าพาร์ติชันถาวรจะต้องติดตั้งใช้งาน
PersistentDataBlockManagerInternal
ก่อนวิ่ง
TestHarnessModeService
ตรวจสอบสถานะของโหมดโปรแกรมทดสอบอัตโนมัติ
เมื่อเปิดใช้โหมดโปรแกรมทดสอบอัตโนมัติ
ActivityManager.isRunningInUserTestHarness()
แสดงผล true
เรียกใช้โหมดโปรแกรมทดสอบอัตโนมัติ
การเปิดใช้โหมดโปรแกรมทดสอบอัตโนมัติจะล้างข้อมูลทั้งหมดออกจากอุปกรณ์และตั้งค่าอุปกรณ์สำหรับการทดสอบ ซึ่งหมายความว่าระบบจะปิดใช้ส่วนต่างๆ ทั้งหมดของอุปกรณ์ที่อาจรบกวนการทดสอบ (เช่น การซิงค์บัญชีโดยอัตโนมัติ การยืนยันแพ็กเกจ และการอัปเดตอัตโนมัติ) โดยค่าเริ่มต้น แต่ผู้ใช้สามารถเปิดใช้ส่วนต่างๆ เหล่านั้นอีกครั้งได้
เรียกใช้คำสั่ง adb
เพื่อเปิดใช้โหมดโปรแกรมทดสอบอัตโนมัติ
adb shell cmd testharness enable