ใช้โหมดโปรแกรมทดสอบอัตโนมัติ

โหมด 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