ใช้ CTS Verifier

ตัวตรวจสอบความเข้ากันได้ของ Android (ตัวตรวจสอบ CTS) เป็นส่วนเสริมของชุดทดสอบความเข้ากันได้ (CTS) แม้ว่า CTS จะตรวจสอบ API และฟังก์ชันต่างๆ ที่เป็นระบบอัตโนมัติได้ แต่ CTS Verifier จะให้การทดสอบสำหรับ API และฟังก์ชันที่ไม่สามารถทดสอบได้บนอุปกรณ์ที่อยู่กับที่โดยไม่ต้องป้อนข้อมูลด้วยตนเอง เช่น คุณภาพเสียง หน้าจอสัมผัส มาตรความเร่ง และกล้อง

ความต้องการ

ก่อนเรียกใช้ CTS Verifier ตรวจสอบให้แน่ใจว่าคุณมีอุปกรณ์ดังต่อไปนี้:

  • อุปกรณ์ Android ที่ตรวจสอบความเข้ากันได้ของ Android API โดยผ่าน CTS สำเร็จ นี่คืออุปกรณ์ที่อยู่ระหว่างการทดสอบ (DUT)
  • คอมพิวเตอร์ Linux พร้อมพอร์ตที่รองรับ USB 2.0 การเชื่อมต่อทั้งหมดไปยัง DUT ต้องผ่านพอร์ตนี้
  • อุปกรณ์ Android เครื่องที่สองที่มีการใช้งาน Bluetooth, Wi-Fi direct และ NFC host card emulation (HCE) ที่เข้ากันได้
  • เราเตอร์ Wi-Fi ที่กำหนดค่าด้วยชื่อจุดเข้าใช้งานและรหัสผ่าน เราเตอร์ควรมีความสามารถในการตัดการเชื่อมต่อจากอินเทอร์เน็ต แต่ไม่ได้ปิด

ข้อกำหนด UICC สำหรับการทดสอบ NFC

CTS Verifier มีกรณีทดสอบ NFC ต่อไปนี้:

  • Field-off (ใช้ข้อมูลธุรกรรมตั้งแต่ 0x54)
  • ยกเลิกการเลือก (ใช้ข้อมูลธุรกรรมตั้งแต่ 0x52)
  • คำสั่ง HCI (0025000000) (ใช้ข้อมูลธุรกรรมตั้งแต่ 0x02)

การทดสอบเหตุการณ์ธุรกรรมต้องใช้อุปกรณ์สองเครื่อง ซึ่งหนึ่งในนั้นต้องมี SecureElement UICC พร้อมกฎการเข้าถึงต่อไปนี้:

  • แฮชของ 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

ในด้านอีมูเลเตอร์ เราคาดว่าเหตุการณ์ธุรกรรมจะผลักดันกิจกรรมที่เกี่ยวข้องไปที่เบื้องหน้า

ติดตั้ง

เปลี่ยนโหมดการนำทางระบบของอุปกรณ์ทดสอบเป็นโหมดสามปุ่มดังนี้:

  1. เปิดการตั้งค่า
  2. ไปที่ ระบบ > ท่าทางสัมผัส > การนำทางของระบบ
  3. เลือกโหมดการนำทางตามปุ่มใดก็ได้ ควรใช้โหมดสามปุ่ม หากมี

ในการตั้งค่าสภาพแวดล้อมการทดสอบ CTS Verifier:

  1. บนคอมพิวเตอร์ Linux:

    • เรียกใช้คำสั่งต่อไปนี้ก่อนที่จะติดตั้ง CTS Verifier เพื่ออนุญาตการเข้าถึงอินเทอร์เฟซที่ไม่ใช่ SDK

      adb shell settings put global hidden_api_policy 1
      
    • ติดตั้ง Android Studio

    • ดาวน์โหลด CTS Verifier APK สำหรับเวอร์ชันของ Android เพื่อทดสอบ

  2. เชื่อมต่อ DUT กับคอมพิวเตอร์ Linux

  3. จากเทอร์มินัลบนคอมพิวเตอร์ Linux ให้ติดตั้ง CtsVerifier.apk บน DUT

    adb install -r -g CtsVerifier.apk
    
  4. สำหรับ Android 10 ขึ้นไป ให้เรียกใช้คำสั่งต่อไปนี้เพื่ออนุญาตให้แอปสร้างรายงาน

    adb shell appops set com.android.cts.verifier android:read_device_identifiers allow
    
  5. สำหรับ Android 11 ขึ้นไป ให้รันคำสั่งต่อไปนี้เพื่ออนุญาตให้บันทึกรายงานในไดเร็กทอรีแบบกำหนดเองภายใต้ไดเร็กทอรีระดับบนสุดภายนอกของอุปกรณ์

    adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
    
  6. ตรวจสอบให้แน่ใจว่า DUT มีข้อมูลระบบและเวลาที่ตั้งไว้อย่างถูกต้อง

เรียกใช้ CTS Verifier

เปิดแอปพลิเคชัน CTS Verifier โดยแตะที่ไอคอน CTS Verifier บน DUT

ไอคอน CTS Verifier ในตัวเรียกใช้งาน

รูปที่ 1 ไอคอน CTS Verifier

แอปจะแสดงชุดทดสอบหลายชุดสำหรับการตรวจสอบด้วยตนเอง

เมนู CTS Verifier ของการทดสอบ

รูปที่ 2 เมนู CTS Verifier ของการทดสอบ

การทดสอบแต่ละครั้งประกอบด้วยชุดองค์ประกอบทั่วไปที่ด้านล่างของหน้าจอ

ตัวตรวจสอบคุณภาพวิดีโอสตรีมมิ่ง

รูปที่ 3 หน้าจอทดสอบโดยเน้นองค์ประกอบการทดสอบทั่วไป

  • ผ่าน (✓). แตะหาก DUT ตรงตามข้อกำหนดการทดสอบตามคำแนะนำข้อมูล
  • ข้อมูล (?) แตะเพื่อแสดงคำแนะนำในการทดสอบ ปรากฏขึ้นโดยอัตโนมัติในครั้งแรกที่เปิดการทดสอบ
  • ล้มเหลว (!) แตะหาก DUT ไม่ตรงตามข้อกำหนดการทดสอบตามคำแนะนำข้อมูล

การทดสอบบางอย่าง เช่น โหมดอุปกรณ์เสริม USB และการทดสอบการปรับเทียบกล้อง จำเป็นต้องมีการตั้งค่าการทดสอบและคำแนะนำเพิ่มเติมตามรายละเอียดในหัวข้อต่อไปนี้

ทดสอบโหมดอุปกรณ์เสริม USB สำหรับ 8.0 ขึ้นไป

CTS Verifier การทดสอบอุปกรณ์เสริม usb

รูปที่ 4 ขั้นตอนการทดสอบอุปกรณ์เสริม USB สำหรับ 8.0 ขึ้นไป

CTS Verifier การทดสอบอุปกรณ์เสริม usb

รูปที่ 5. การทดสอบโหมดอุปกรณ์เสริม USB สำหรับ 8.0 ขึ้นไป

ทดสอบโหมดอุปกรณ์เสริม USB สำหรับ 7.x และต่ำกว่า

การทดสอบอุปกรณ์เสริม USB ต้องใช้คอมพิวเตอร์ Linux เพื่อเรียกใช้โปรแกรมเครื่องเดสก์ท็อป USB (โฮสต์)

  1. เชื่อมต่อ DUT กับคอมพิวเตอร์ Linux
  2. บนคอมพิวเตอร์ รันโปรแกรม cts-usb-accessory จากแพ็คเกจ CTS Verifier:

    ./cts-usb-accessory
  3. รอให้ข้อความป๊อปอัปปรากฏขึ้นบน DUT จากนั้นเลือก ตกลง
    CTS Verifier การทดสอบอุปกรณ์เสริม usb

    รูปที่ 6 การทดสอบอุปกรณ์เสริม USB

  4. ไปที่การทดสอบอุปกรณ์เสริม USB ในแอปพลิเคชัน CTS Verifier บน DUT

  5. บนคอมพิวเตอร์ ตรวจสอบผลลัพธ์จากคอนโซล ตัวอย่างผลลัพธ์:

    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
    

ปรับเทียบมุมมองกล้อง

ใช้ขั้นตอนการสอบเทียบขอบเขตการมองเห็นเพื่อกำหนดขอบเขตการมองเห็นอุปกรณ์อย่างรวดเร็วด้วยความแม่นยำปานกลาง

  1. ตั้งค่าสภาพแวดล้อมการทดสอบ:

    1. พิมพ์ไฟล์เป้าหมาย calibration-pattern.pdf บนกระดาษขนาด 11” x 17” หรือ A3
    2. ติดตั้งลวดลายที่พิมพ์บนแผ่นรองแข็ง
    3. จัดวางอุปกรณ์กล้องและเป้าหมายที่พิมพ์ออกมาดังแสดงในแผนภาพต่อไปนี้
      กล้องพิมพ์เป้าหมาย

      รูปที่ 7 เป้าพิมพ์ของกล้อง

  2. กำหนดความกว้างเป้าหมาย:

    1. วัดระยะห่าง (เป็นเซนติเมตร) ระหว่างเส้นทึบบนรูปแบบเป้าหมายเพื่อพิจารณาความไม่ถูกต้องในการพิมพ์ (~38 ซม.)
    2. เริ่มแอปพลิเคชันการสอบเทียบ
    3. กดปุ่มตั้งค่าและเลือก ระยะเครื่องหมาย
    4. วัดและป้อนระยะทางไปยังรูปแบบเป้าหมาย (~100 ซม.)
    5. กดปุ่มย้อนกลับเพื่อกลับไปยังการแสดงตัวอย่างการปรับเทียบ
  3. ตรวจสอบว่าวางอุปกรณ์และเป้าหมายตามที่แสดงในภาพและป้อนระยะทางที่ถูกต้องลงในกล่องโต้ตอบการตั้งค่า ภาพตัวอย่างจะแสดงภาพโดยมีเส้นแนวตั้งวางทับอยู่ เส้นนี้ควรอยู่ในแนวเดียวกับเส้นกึ่งกลางของรูปแบบเป้าหมาย กริดแบบโปร่งใสสามารถใช้กับเส้นแนวตั้งอื่นๆ ได้ เพื่อให้แน่ใจว่าแกนออปติคัลอยู่ในมุมฉากกับเป้าหมาย

  4. เรียกใช้การทดสอบการสอบเทียบ:

    1. เลือกความละเอียดของภาพ (โดยใช้ตัวเลือกที่ด้านล่างซ้าย) จากนั้นแตะหน้าจอเพื่อถ่ายภาพ การทดสอบเข้าสู่โหมดการปรับเทียบมาตรฐานและแสดงภาพถ่ายโดยมีเส้นแนวตั้งสองเส้นซ้อนอยู่บนภาพ
    2. กำหนดความถูกต้อง:
      • หากเส้นตรงกับเส้นแนวตั้งบนรูปแบบเป้าหมายภายในไม่กี่เซนติเมตร ขอบเขตการมองเห็นที่รายงานสำหรับผลลัพธ์ที่เลือกจะถูกต้อง
      • ถ้าเส้นไม่สอดคล้องกัน แสดงว่าเขตข้อมูลมุมมองที่รายงานไม่ถูกต้อง ในการแก้ไขปัญหานี้ ให้ปรับแถบเลื่อนที่ด้านล่างของหน้าจอจนกว่าการซ้อนทับจะสอดคล้องกับรูปแบบเป้าหมายให้ใกล้เคียงที่สุด เมื่อภาพซ้อนทับและรูปแบบเป้าหมายอยู่ในแนวเดียวกัน มุมมองที่แสดงจะเป็นค่าประมาณที่ใกล้เคียงกับค่าที่ถูกต้อง ขอบเขตการมองเห็นที่รายงานควรอยู่ภายใน +/-2 องศาของค่าการสอบเทียบ
    3. กดปุ่มย้อนกลับและทำการทดสอบการปรับเทียบซ้ำสำหรับความละเอียดของภาพทั้งหมดที่รองรับโดย DUT

เรียกใช้ CTS Verifier สำหรับโหมดสำรอง

ตั้งแต่รุ่น CTS 10 R6 และ CTS 11 R2 เป็นต้นไป CTS Verifier รองรับการทดสอบที่จำเป็นสำหรับอุปกรณ์ที่มีโหมดทางเลือก หรือสำหรับอุปกรณ์ที่มีโหมดหน้าจอมากกว่าหนึ่งโหมด

ที่ด้านบนของมุมมองรายการหลักใน CTS Verifier ปุ่มจะแสดงขึ้นเพื่อให้ผู้ใช้สลับไปมาระหว่างโหมดการแสดงผลที่กางออกและพับ CTS Verifier จะแสดงการทดสอบที่จำเป็นสำหรับโหมดการแสดงผลที่เลือก ในการเรียกใช้โหมดอื่นใน CTS Verifier ควรสลับปุ่มไปที่โหมดการแสดงผลที่เหมาะสมและเรียกใช้รายการการทดสอบที่แสดง

สวิตช์สลับ CTS-V

ผลลัพธ์ของการทดสอบแบบพับจะถูกบันทึกไว้ในรายงานเดียวกันกับการทดสอบที่คลี่ออก เพื่อระบุผลการทดสอบแต่ละอันที่มาจากชุดการทดสอบ จะมีการเพิ่มคำต่อท้ายให้กับชื่อการทดสอบแต่ละชื่อภายใต้โหมดพับ

<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

  1. หากต้องการบันทึกผลการทดสอบ ให้แตะไอคอนบันทึก (ดิสก์) ที่ด้านบนของรายการหมวดหมู่การทดสอบ

  2. รอข้อความป๊อปอัปที่แสดงเส้นทางของไฟล์ไปยังรายงานที่บันทึกไว้ (เช่น /sdcard/verifierReports/ctsVerifierReport-date-time.zip ) จากนั้นบันทึกเส้นทาง

  3. เชื่อมต่อ DUT กับคอมพิวเตอร์ Linux

  4. จากการติดตั้ง 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 ขึ้นไป การใช้งานยานยนต์และอุปกรณ์ที่ทำงานเป็น ผู้ใช้สำรอง ให้ดาวน์โหลดรายงานล่าสุดโดยใช้คำสั่งต่อไปนี้:

      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
      
  5. หากต้องการล้างผลการผ่าน/ไม่ผ่าน ให้เลือกผลลัพธ์ในแอป CTS Verifier และเลือก Menu > Clear