ความเข้ากันได้กับ Test Suite Verifier (CTS Verifier) ของ Android เป็นส่วนเสริมของชุดทดสอบความเข้ากันได้ (CTS) ในขณะที่ CTS จะตรวจสอบ API และฟังก์ชันที่ทำงานอัตโนมัติได้ แต่ CTS Verifier จะทำการทดสอบ API และฟังก์ชันที่ไม่สามารถทดสอบในอุปกรณ์ที่อยู่กับที่โดยไม่มีการป้อนข้อมูลหรือการจัดตำแหน่งด้วยตนเอง เช่น คุณภาพเสียง หน้าจอสัมผัส เซ็นเซอร์วัดความเร่ง และกล้อง
ข้อกำหนด
ก่อนเรียกใช้ CTS Verifier โปรดตรวจสอบว่าคุณมีอุปกรณ์ต่อไปนี้
- อุปกรณ์ Android ที่ยืนยันความเข้ากันได้ของ Android API โดยการส่งผ่าน CTS เรียบร้อยแล้ว อุปกรณ์นี้อยู่ระหว่างการทดสอบ (DUT)
- คอมพิวเตอร์ Linux ที่ใช้พอร์ตที่รองรับ USB 2.0 การเชื่อมต่อทั้งหมดกับ DUT จะผ่านพอร์ตนี้
- อุปกรณ์ Android เครื่องที่ 2 ที่มีการใช้งานบลูทูธ, Wi-Fi Direct, Wi-Fi Aware, UWB (หาก DUT รองรับ UWB) และการจําลองบัตรโฮสต์ NFC (HCE) ที่ทราบว่าเข้ากันได้
- เราเตอร์ Wi-Fi ที่กําหนดค่าด้วยชื่อและรหัสผ่านของจุดเข้าใช้งาน เราเตอร์ควรตัดการเชื่อมต่อจากอินเทอร์เน็ตได้ แต่ไม่ต้องปิด
อย่าลืมเตรียมขาตั้งกล้อง อุปกรณ์ยึด และระยะทางที่วัดไว้ล่วงหน้าซึ่งจําเป็นสําหรับการทดสอบการวัดระยะทาง (ระยะใกล้) สําหรับ UWB, Wi-Fi NAN และ Bluetooth RSSI ด้วย โปรดดูรายละเอียดที่หัวข้อการปรับเทียบการตรวจหาบุคคล
ข้อกำหนด UICC สำหรับการทดสอบ NFC
CTS Verifier มีกรณีทดสอบ NFC ดังต่อไปนี้
- ฟิลด์ปิด (ใช้ข้อมูลธุรกรรมจาก 0x54)
- ยกเลิกการเลือก (ใช้ข้อมูลธุรกรรมจาก 0x52)
- คำสั่ง HCI (0025000000) (ใช้ข้อมูลธุรกรรมจาก 0x02)
การทดสอบเหตุการณ์ธุรกรรมต้องใช้อุปกรณ์ 2 เครื่อง โดยอุปกรณ์หนึ่งต้องมี UICC ของ SecureElement ที่มีกฎการเข้าถึงต่อไปนี้
- แฮช CtsVerifier APK: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
- ตัวระบุแอปพลิเคชันที่ได้รับอนุญาต (AID) สําหรับการเข้าถึงเหตุการณ์ NFC: 0xA000000476416E64726F696443545341
ในส่วนของโปรแกรมจำลอง เราคาดว่าเหตุการณ์ธุรกรรมจะดันกิจกรรมที่เกี่ยวข้องไปไว้ที่เบื้องหน้า
ตั้งค่า
เปลี่ยนโหมดการนำทางของระบบในอุปกรณ์ทดสอบเป็นโหมด 3 ปุ่ม ดังนี้
- เปิดการตั้งค่า
- ไปที่ระบบ > ท่าทางสัมผัส > การนําทางของระบบ
- เลือกโหมดการนำทางแบบปุ่มใดก็ได้ โดยแนะนำให้ใช้โหมด 3 ปุ่ม หากมี
วิธีตั้งค่าสภาพแวดล้อมการทดสอบ CTS Verifier
ในคอมพิวเตอร์ Linux ให้ทำดังนี้
เรียกใช้คําสั่งต่อไปนี้ก่อนติดตั้ง CTS Verifier เพื่ออนุญาตให้เข้าถึงอินเทอร์เฟซที่ไม่ใช่ SDK
adb shell settings put global hidden_api_policy 1
ติดตั้ง Android Studio
ดาวน์โหลด CTS Verifier APK สำหรับเวอร์ชัน Android ที่จะทดสอบ
เชื่อมต่อ DUT กับคอมพิวเตอร์ Linux
จากเทอร์มินัลในคอมพิวเตอร์ Linux ให้ติดตั้ง
CtsVerifier.apk
ใน DUTadb install -r -g CtsVerifier.apk
สําหรับ Android 10 ขึ้นไป ให้เรียกใช้คําสั่งต่อไปนี้เพื่อให้สิทธิ์แก่แอปในการสร้างรายงาน
adb shell appops set com.android.cts.verifier android:read_device_identifiers allow
สำหรับ Android 11 ขึ้นไป ให้เรียกใช้คำสั่งต่อไปนี้เพื่ออนุญาตให้บันทึกรายงานในไดเรกทอรีที่กำหนดเองภายในไดเรกทอรีระดับบนสุดภายนอกของอุปกรณ์
adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
สำหรับ Android 13 ขึ้นไป ให้เรียกใช้คำสั่งต่อไปนี้เพื่ออนุญาตการเข้าถึง API การทดสอบสำหรับ CTS Verifier
adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
สำหรับ Android 14 ขึ้นไป ให้เรียกใช้คำสั่งต่อไปนี้เพื่ออนุญาตให้แอปเปิดหน้าจอ
adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0
ตรวจสอบว่า DUT ตั้งค่าวันที่และเวลาของระบบอย่างถูกต้อง
เรียกใช้ CTS Verifier
เปิดแอปพลิเคชัน CTS Verifier โดยแตะไอคอน CTS Verifier ใน DUT
รูปที่ 1 ไอคอนผู้ยืนยัน CTS
แอปจะแสดงชุดทดสอบต่างๆ ที่มีให้ใช้ในการยืนยันด้วยตนเอง
รูปที่ 2 เมนูการทดสอบของ CTS Verifier
การทดสอบแต่ละครั้งจะมีชุดองค์ประกอบทั่วไปอยู่ที่ด้านล่างของหน้าจอ
รูปที่ 3 หน้าจอทดสอบที่ไฮไลต์องค์ประกอบการทดสอบทั่วไป
- ผ่าน (✓) แตะหาก DUT เป็นไปตามข้อกำหนดการทดสอบตามวิธีการในข้อมูล
- ข้อมูล (?) แตะเพื่อแสดงวิธีการทดสอบ และจะปรากฏขึ้นโดยอัตโนมัติ ในครั้งแรกที่เปิดการทดสอบ
- ไม่ผ่าน (!) แตะหาก DUT ไม่เป็นไปตามข้อกำหนดการทดสอบตามคำแนะนำในข้อมูล
การทดสอบบางอย่าง เช่น โหมดอุปกรณ์เสริม USB และการทดสอบการปรับเทียบกล้อง จะต้องมีวิธีการตั้งค่าการทดสอบเพิ่มเติมและวิธีการดังรายละเอียดในส่วนต่อไปนี้
ทดสอบโหมดอุปกรณ์เสริม USB สำหรับ 8.0 ขึ้นไป
รูปที่ 4 กระบวนการทดสอบอุปกรณ์เสริม USB สำหรับ 8.0 ขึ้นไป
รูปที่ 5 การทดสอบโหมดอุปกรณ์เสริม USB สำหรับ 8.0 ขึ้นไป
ทดสอบโหมดอุปกรณ์เสริม USB สำหรับ 7.x และต่ำกว่า
การทดสอบอุปกรณ์เสริม USB ต้องใช้คอมพิวเตอร์ Linux เพื่อเรียกใช้โปรแกรมเครื่องเดสก์ท็อป (โฮสต์) USB
- เชื่อมต่อ DUT กับคอมพิวเตอร์ Linux
ในคอมพิวเตอร์ ให้เรียกใช้โปรแกรม
cts-usb-accessory
จากแพ็กเกจ CTS Verifier โดยทำดังนี้./cts-usb-accessory
รอให้ข้อความป๊อปอัปปรากฏขึ้นใน DUT แล้วเลือกตกลง
รูปที่ 6 การทดสอบอุปกรณ์เสริม USB
ไปที่การทดสอบอุปกรณ์เสริม USB ในแอปพลิเคชัน CTS Verifier บน DUT
ตรวจสอบเอาต์พุตจากคอนโซลในคอมพิวเตอร์ ตัวอย่างเอาต์พุต
CTS USB Accessory Tester Found possible Android device (413c:2106) - attempting to switch to accessory mode... Failed to read protocol versionfigure3 Found Android device in accessory mode (18d1:2d01)... [RECV] Message from Android device #0 [SENT] Message from Android accessory #0 [RECV] Message from Android device #1 [SENT] Message from Android accessory #1 [RECV] Message from Android device #2 [SENT] Message from Android accessory #2 [RECV] Message from Android device #3 [SENT] Message from Android accessory #3 [RECV] Message from Android device #4 [SENT] Message from Android accessory #4 [RECV] Message from Android device #5 [SENT] Message from Android accessory #5 [RECV] Message from Android device #6 [SENT] Message from Android accessory #6 [RECV] Message from Android device #7 [SENT] Message from Android accessory #7 [RECV] Message from Android device #8 [SENT] Message from Android accessory #8 [RECV] Message from Android device #9 [SENT] Message from Android accessory #9 [RECV] Message from Android device #10 [SENT] Message from Android accessory #10
ปรับเทียบขอบเขตการมองเห็นของกล้อง
ใช้ขั้นตอนการปรับเทียบมุมมองเพื่อระบุมุมมองของอุปกรณ์อย่างรวดเร็วด้วยความแม่นยำปานกลาง
ตั้งค่าสภาพแวดล้อมการทดสอบ
- พิมพ์ไฟล์เป้าหมาย calibration-pattern.pdf บนกระดาษขนาด 11 x 17 นิ้วหรือ A3
- ติดลายที่พิมพ์ไว้บนพื้นหลังที่แข็ง
ปรับอุปกรณ์กล้องและเป้าหมายที่พิมพ์ตามภาพแผนภาพต่อไปนี้
รูปที่ 7 เป้าหมายที่พิมพ์จากกล้อง
กำหนดความกว้างของเป้าหมาย ดังนี้
- วัดระยะห่าง (เป็นเซนติเมตร) ระหว่างเส้นหนาในลวดลายเป้าหมายเพื่อพิจารณาความคลาดเคลื่อนในการพิมพ์ (~38 ซม.)
- เริ่มแอปพลิเคชันการปรับ
- กดปุ่มตั้งค่าแล้วเลือกระยะห่างเครื่องหมาย
- วัดและป้อนระยะทางไปยังรูปแบบเป้าหมาย (ประมาณ 100 ซม.)
- กดปุ่มย้อนกลับเพื่อกลับไปที่ตัวอย่างการปรับเทียบ
ตรวจสอบว่าอุปกรณ์และเป้าหมายวางไว้ตามที่แสดงในรูปภาพ และป้อนระยะทางที่ถูกต้องในกล่องโต้ตอบการตั้งค่าแล้ว ตัวอย่างจะแสดงรูปภาพที่มีเส้นแนวตั้งวางซ้อนอยู่ เส้นนี้ควรสอดคล้องกับเส้นกึ่งกลางของรูปแบบเป้าหมาย สามารถใช้ตารางกริดแบบโปร่งใสร่วมกับเส้นแนวตั้งอื่นๆ เพื่อให้แน่ใจว่าแกนแสงตั้งฉากกับเป้าหมาย
ทำการทดสอบการปรับเทียบโดยทำดังนี้
- เลือกความละเอียดของรูปภาพ (ใช้ตัวเลือกที่ด้านล่างซ้าย) แล้วแตะหน้าจอเพื่อถ่ายภาพ การทดสอบจะเข้าสู่โหมดการปรับเทียบและแสดงรูปภาพที่มีเส้นแนวตั้ง 2 เส้นวางซ้อนกันบนรูปภาพ
- ตรวจสอบความแม่นยำ
- หากเส้นนั้นสอดคล้องกับเส้นแนวตั้งของรูปแบบเป้าหมายภายในระยะ 2-3 เซนติเมตร แสดงว่ามุมมองที่รายงานสำหรับความละเอียดที่เลือกนั้นถูกต้อง
- หากเส้นไม่สอดคล้องกัน มุมมองที่รายงานจะไม่ถูกต้อง หากต้องการแก้ไข ให้ปรับแถบเลื่อนที่ด้านล่างของหน้าจอจนกว่าการวางซ้อนจะสอดคล้องกับรูปแบบเป้าหมายมากที่สุด เมื่อวางซ้อนและรูปภาพรูปแบบเป้าหมายสอดคล้องกัน มุมมองที่แสดงจะใกล้เคียงกับค่าที่ถูกต้อง มุมมองที่รายงานควรอยู่ภายใน +/-2 องศาของค่าการปรับเทียบ
- กดปุ่มย้อนกลับและทำการทดสอบการปรับเทียบอีกครั้งสำหรับความละเอียดของรูปภาพทั้งหมดที่อุปกรณ์ทดสอบรองรับ
เรียกใช้ CTS Verifier สำหรับโหมดอื่นๆ
ตั้งแต่รุ่น CTS 10 R6 และ CTS 11 R2 ก็ให้ CTS Verifier รองรับการทดสอบที่จำเป็นสำหรับอุปกรณ์ที่มีโหมดอื่นหรืออุปกรณ์ที่มีโหมดหน้าจอมากกว่า 1 โหมด
ที่ด้านบนของมุมมองรายการหลักใน CTS Verifier จะมีปุ่มแสดงขึ้นเพื่อให้ผู้ใช้สลับระหว่างโหมดการแสดงผลแบบกางออกและแบบพับได้ CTS Verifier จะแสดงการทดสอบที่จําเป็นสําหรับโหมดการแสดงผลที่เลือก หากต้องการเรียกใช้โหมดอื่นใน CTS Verifier คุณควรเปลี่ยนปุ่มเป็นโหมดการแสดงผลที่เหมาะสม แล้วเรียกใช้รายการการทดสอบที่แสดง
ระบบจะบันทึกผลลัพธ์ของการทดสอบแบบรวมไว้ในรายงานเดียวกับการทดสอบแบบแยก หากต้องการระบุว่าผลการทดสอบแต่ละรายการมาจากชุดการทดสอบใด จะมีการเพิ่มส่วนต่อท้ายลงในชื่อการทดสอบแต่ละรายการในโหมดย่อ
<Test result="fail" name="com.android.cts.verifier.deskclock.DeskClockTestsActivity[folded]">
<RunHistory subtest="CREATE_ALARM[folded]">
<Run start="1594176663973" end="1594176665841" isAutomated="false" />
</RunHistory>
</Test>
ส่งออกผลลัพธ์
หลังจากการทดสอบทั้งหมดเสร็จสมบูรณ์แล้ว คุณสามารถบันทึกผลลัพธ์เป็นรายงานและดาวน์โหลดลงในคอมพิวเตอร์ได้ ระบบจะประทับเวลาชื่อรายงานโดยอัตโนมัติตามเวลาของระบบ DUT
หากต้องการบันทึกผลการทดสอบ ให้แตะไอคอนบันทึก (ดิสก์) ที่ด้านบนของรายการหมวดหมู่การทดสอบ
รอข้อความป๊อปอัปที่แสดงเส้นทางไฟล์ไปยังรายงานที่บันทึกไว้ (เช่น
/sdcard/verifierReports/ctsVerifierReport-date-time.zip
) จากนั้นบันทึกเส้นทางเชื่อมต่อ DUT กับคอมพิวเตอร์ที่ใช้ Linux
จากการติดตั้ง Android SDK ในคอมพิวเตอร์ Linux ให้ดาวน์โหลดรายงานจากอุปกรณ์ที่เชื่อมต่อโดยใช้
adb shell content read
หรือadb pull CTSVerifierReportPath
สําหรับ Android 7.x ขึ้นไป ให้ดาวน์โหลดรายงานทั้งหมดโดยใช้คําสั่งต่อไปนี้
adb pull /sdcard/verifierReports
สำหรับ Android 6.0 และต่ำกว่า ให้ดาวน์โหลดรายงานทั้งหมดโดยใช้คำสั่งต่อไปนี้
adb pull /mnt/sdcard/ctsVerifierReports/
สำหรับ Android 10 ขึ้นไปที่ใช้ Automotive และอุปกรณ์ที่เรียกใช้ในฐานะผู้ใช้รอง ให้ดาวน์โหลดรายงานล่าสุดโดยใช้คำสั่งต่อไปนี้
adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zip
วิธีแสดงรายการรายงานทั้งหมดที่มีในอุปกรณ์ที่เชื่อมต่อ
adb shell content query --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports
หากต้องการดาวน์โหลดรายงานจากรายการ ให้ระบุรหัสแถวหรือชื่อไฟล์ เช่น
adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/ctsVerifierReport-date-time.zip > report.zip
หากต้องการล้างผลการทดสอบผ่าน/ไม่ผ่าน ให้เลือกผลการทดสอบในแอป CTS Verifier แล้วเลือกเมนู > ล้าง