ใช้ 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

    • ดาวน์โหลด CTS Verifier เอพีเค Android เวอร์ชันไปทดสอบ

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

  3. จากสถานีบนคอมพิวเตอร์ลินุกซ์, ติดตั้ง 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 บน DUT

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

ไอคอนรูปที่ 1 CTS ตรวจสอบ

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

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

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

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

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

องค์ประกอบรูปที่ 3 การทดสอบ

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

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

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

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

รูปที่ 4 USB prcedure ทดสอบอุปกรณ์เสริมสำหรับ 8.0 และสูงกว่า

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

รูปที่ 5 การทดสอบโหมด USB อุปกรณ์เสริมสำหรับ 8.0 และสูงกว่า

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

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

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

    ./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. พิมพ์ สอบเทียบ pattern.pdf แฟ้มเป้าหมายที่ 11” x 17” หรือกระดาษขนาด A3
    2. ติดตั้งลวดลายที่พิมพ์บนแผ่นรองแข็ง
    3. จัดวางอุปกรณ์กล้องและเป้าหมายที่พิมพ์ออกมาดังที่แสดงด้านล่าง
      กล้องพิมพ์เป้าหมาย

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

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

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

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

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

    รูปที่ 8 CTS Verifier ไอคอนบันทึก

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

    เส้นทางรูปที่ 9 CTS ตรวจสอบการรายงานที่บันทึกไว้

  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 ตรวจสอบและเลือกเมนู> ล้าง