เรียกใช้การทดสอบฝั่งโฮสต์ของ CTS Verifier

หน้านี้มีวิธีการตั้งค่าและเรียกใช้การทดสอบ Android 16 QPR2 และ Android 17 ฝั่งโฮสต์ของ CTS Verifier (CTS-V) การทดสอบฝั่งโฮสต์มี 2 ประเภท ได้แก่ การทดสอบแบบหลายอุปกรณ์ (เปิดตัวก่อน Android 17) และการทดสอบแบบอินเทอร์แอกทีฟ (ใหม่สำหรับ Android 17)

  • การทดสอบแบบหลายอุปกรณ์เป็นการทดสอบอัตโนมัติเต็มรูปแบบ
  • การทดสอบแบบอินเทอร์แอกทีฟเป็นการทดสอบแบบกึ่งอัตโนมัติ ซึ่งกำหนดให้คุณต้องทำตามขั้นตอนด้วยตนเองบางอย่างในอุปกรณ์ภายใต้การทดสอบ (DUT)

นอกเหนือจากการทดสอบแบบอินเทอร์แอกทีฟใหม่ๆ แล้ว เรายังได้แปลงความแม่นยำในการวัดระยะด้วยตนเองและการทดสอบโทรคมนาคมเป็นการทดสอบแบบหลายอุปกรณ์ฝั่งโฮสต์ และตอนนี้คุณต้องทำการทดสอบการเชื่อมต่อ Wi-Fi แล้ว

ตั้งค่าการทดสอบฝั่งโฮสต์

ทำตามขั้นตอนต่อไปนี้เพื่อตั้งค่าการทดสอบฝั่งโฮสต์ (การทดสอบแบบหลายอุปกรณ์ ต้องมีการตั้งค่าเพิ่มเติม)

  1. ตรวจสอบว่าเครื่องเดสก์ท็อปของคุณเป็นไปตามข้อกำหนดของระบบปฏิบัติการ สำหรับ CTS
  2. ทำตามขั้นตอนที่ 2 และ 5 ของติดตั้งซอฟต์แวร์เดสก์ท็อป เพื่อติดตั้งและยืนยันว่าได้ติดตั้ง adb, AAPT2 และ Python อย่างถูกต้องบน เดสก์ท็อปแล้ว
    • Python ของคุณควรเป็นเวอร์ชัน 3.11 ขึ้นไป หากต้องการตรวจสอบเวอร์ชัน Python ให้เรียกใช้ python3 --version หากเวอร์ชันต่ำกว่า 3.11 ให้ติดตั้ง Python เวอร์ชันล่าสุดอย่างเป็นทางการ ดูข้อมูลเพิ่มเติมได้ที่ส่วนการดาวน์โหลดของ python.org
    • การทดสอบบางอย่างกำหนดให้โฮสต์ต้องมีโมดูล Python venv ในระบบ Debian และ Ubuntu อาจไม่ได้ติดตั้งโมดูลนี้ไว้โดยค่าเริ่มต้น หากต้องการตรวจสอบว่าเวอร์ชัน Python ของคุณมีโมดูล venv หรือไม่ ให้เรียกใช้ python3 -m venv venv หากคำสั่งนี้ไม่สำเร็จ ระบบจะแสดงข้อความแสดงข้อผิดพลาด ทำตามข้อความแจ้งเพื่อติดตั้งแพ็กเกจ python3.x-venv

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

ตั้งค่าการทดสอบแบบหลายอุปกรณ์ฝั่งโฮสต์

ทำตามขั้นตอนต่อไปนี้เพื่อตั้งค่าการทดสอบแบบหลายอุปกรณ์ฝั่งโฮสต์

  1. ตรวจสอบว่าเครื่องเดสก์ท็อปของคุณเป็นไปตามข้อกำหนดของระบบปฏิบัติการ สำหรับ CTS
  2. ทำตามขั้นตอนที่ 2 และ 5 ของติดตั้งซอฟต์แวร์เดสก์ท็อป เพื่อติดตั้งและยืนยันว่าได้ติดตั้ง adb, AAPT2 และ Python อย่างถูกต้องบน เดสก์ท็อปแล้ว

    • Python ของคุณควรเป็นเวอร์ชัน 3.11 ขึ้นไป หากต้องการตรวจสอบเวอร์ชัน Python ให้เรียกใช้ python3 --version หากเวอร์ชันต่ำกว่า 3.11 ให้ติดตั้ง Python เวอร์ชันล่าสุดอย่างเป็นทางการ ดูข้อมูลเพิ่มเติมได้ที่ส่วนการดาวน์โหลดของ python.org
    • การทดสอบบางอย่างกำหนดให้โฮสต์ต้องมีโมดูล Python venv ในระบบ Debian และ Ubuntu อาจไม่ได้ติดตั้งโมดูลนี้ไว้โดยค่าเริ่มต้น หากต้องการตรวจสอบว่าเวอร์ชัน Python ของคุณมีโมดูล venv หรือไม่ ให้เรียกใช้ python3 -m venv venv หากคำสั่งนี้ไม่สำเร็จ ระบบจะแสดงข้อความแสดงข้อผิดพลาด ทำตามข้อความแจ้งเพื่อติดตั้งแพ็กเกจ python3.x-venv
  3. เตรียม DUT ที่ตรงกัน 2 เครื่อง โดยแต่ละเครื่องมีการตั้งค่า CTS-V

  4. ไปที่ส่วนการตั้งค่าสำหรับประเภทการทดสอบของคุณ

หากการทดสอบของคุณไม่อยู่ในรายการนี้ ให้ไปที่ตั้งค่าการทดสอบแบบ 2 อุปกรณ์มาตรฐาน

ตั้งค่าการทดสอบ NFC

การทดสอบ NFC ใช้ DUT 1 เครื่องและชิป NFC PN532 1 ตัว

วิธีตั้งค่าการทดสอบ NFC

  1. ซื้อชิป NFC PN532 เราขอแนะนำให้ใช้ All-In-One PN532
  2. ใน DUT ให้ไปที่แอปการตั้งค่า
  3. เปิดใช้ NFC
  4. วางชิป NFC โดย

    • สำหรับโทรศัพท์ ให้วางเครื่องอ่าน NFC ของ DUT ตามที่แสดงในรูปที่ 1

      ตำแหน่งชิป NFC

      รูปที่ 1 การวางตำแหน่งชิป NFC

    • สำหรับอุปกรณ์ประเภทอื่นๆ ให้วางชิปไว้ข้างเสาอากาศ NFC ของอุปกรณ์

  5. ต่อชิป NFC PN532 เข้ากับเวิร์กสเตชันทดสอบโดยใช้สาย USB

ตั้งค่าการทดสอบการเชื่อมต่อ AP ของ Wi-Fi

การทดสอบการเชื่อมต่อจุดเข้าใช้งาน Wi-Fi (AP) (CtsWifiConnectionTests) จะทดสอบ การเชื่อมต่อระหว่าง DUT กับ AP คุณตั้งค่าการทดสอบเหล่านี้ได้ 2 วิธีดังนี้

  • ตัวเลือกที่ 1: ใช้เครือข่าย Wi-Fi ที่มีอยู่ซึ่งคุณตั้งค่าไว้สำหรับ CTS-V
  • ตัวเลือกที่ 2: ตั้งค่าจุดเข้าใช้งาน (AP) ที่ตั้งโปรแกรมได้

สำหรับ Android 17 เราขอแนะนำให้ใช้ตัวเลือกที่ 2 แต่ไม่ได้บังคับ 2 ส่วนต่อไปนี้จะอธิบายแต่ละตัวเลือก

ตัวเลือกที่ 1: ใช้เครือข่าย Wi-Fi ที่มีอยู่ซึ่งคุณตั้งค่าไว้สำหรับ CTS-V

ตัวเลือกที่ 1 ต้องใช้อุปกรณ์ภายใต้การทดสอบ (DUT) ของ Android 1 เครื่องภายในพื้นที่ครอบคลุมเครือข่าย Wi-Fi หาก DUT อยู่ในกล่องป้องกันและเชื่อมต่อเครือข่าย Wi-Fi ไม่ได้ ให้นำออกจาก กล่องป้องกัน

ตัวเลือกที่ 2: ตั้งค่า AP ที่ตั้งโปรแกรมได้

วิธีตั้งค่า AP ที่ตั้งโปรแกรมได้สำหรับการทดสอบการเชื่อมต่อ Wi-Fi

  1. ซื้อ Banana Pi R3 AP และตั้งค่า ดูข้อมูลเกี่ยวกับการซื้อ และการตั้งค่า Banana Pi R3 AP ได้ที่ตั้งค่า Banana Pi BPI-R3 AP

  2. ไม่บังคับ: หากไม่มีกล่องป้องกัน เราขอแนะนำกล่องป้องกัน JTP-SR101 ซื้อกล่องนี้โดยใช้ข้อมูลต่อไปนี้

    Dong Guan Zheng Sheng Electronics Technology Co., LTD
    Bohui Industrial Park, Panlong Road, Liaobu Town, Dongguan City, Guangdong Province, China
    Contact: Forest Pan
    Email: forest.pan@jtpmak.cn
    Phone (China): +86 18676993556

  3. เชื่อมต่อ DUT และ AP กับโฮสต์ แล้ววางไว้ในกล่องป้องกัน RF DUT และ AP ควรห่างกันอย่างน้อย 10 ซม. รูปที่ 2 แสดงการกำหนดค่านี้

    DUT และ AP ในกล่องป้องกัน

    รูปที่ 2 DUT และ AP ในกล่องป้องกัน

  4. ใช้ SSH เพื่อยืนยันว่าโฮสต์เข้าถึง AP ได้

ตั้งค่าการทดสอบความแม่นยำของการวัดระยะ

วิธีตั้งค่าการทดสอบความแม่นยำของระยะ

  1. วาง DUT ของ Android ที่ตรงกัน 2 เครื่องห่างกัน 1 เมตรในระดับความสูงเดียวกัน โดยมีแนวสายตาตรงกันและหันด้านหลังของอุปกรณ์แต่ละเครื่องเข้าหากัน รูปที่ 3 แสดงการวางแนวนี้

    การวางแนวของอุปกรณ์

    รูปที่ 3 การวางแนวของอุปกรณ์

  2. เชื่อมต่ออุปกรณ์ทั้งสองกับคอมพิวเตอร์เดสก์ท็อปผ่านสาย USB

ตั้งค่าการทดสอบแบบ 2 อุปกรณ์มาตรฐาน

สำหรับการตั้งค่าอุปกรณ์ 2 เครื่องเริ่มต้น ให้ทำดังนี้

  1. วาง DUT ของ Android 2 เครื่องที่ตรงกันให้ห่างกันประมาณ 20 ซม.
  2. แนะนำอย่างยิ่ง: วางอุปกรณ์ทั้ง 2 เครื่องในกล่องป้องกัน กล่องป้องกัน ช่วยเพิ่มความเสถียรในการทดสอบและทำให้การแก้ไขข้อบกพร่องของการทดสอบที่ล้มเหลวทำได้ง่ายขึ้น

  3. สำหรับการทดสอบโทรคมนาคม DUT แต่ละเครื่องต้องมีซิมการ์ดและสัญญาณโทรศัพท์มือถือ หาก DUT อยู่ในกล่องป้องกัน สัญญาณโทรศัพท์มือถือจะต้องเชื่อมต่อกับกล่อง หรือย้ายอุปกรณ์ออกจากกล่องป้องกัน

  4. ไม่บังคับ: ตั้งค่าเครื่องดมกลิ่น OTA สำหรับการแก้ไขข้อบกพร่องของ Wi-Fi

ตั้งค่าการทดสอบ CDM

test_permissions_sync() กรณีทดสอบมีลักษณะการทำงานที่แตกต่างกันไปตาม ประเภทบิลด์ของอุปกรณ์ที่ใช้ทดสอบ สิ่งสำคัญคือ OEM ต้องทดสอบบิลด์ที่ทั้งดีบักได้ (userdebug หรือ eng) และดีบักไม่ได้ (user) และต้องผ่านการทดสอบทั้ง 2 บิลด์

ไม่ต้องชำระ

ข้อกำหนดของ CDD สำหรับการติดตั้งใช้งาน Permissions Sync API กำหนดให้ API ดังกล่าว สามารถโอนข้อมูลระหว่างอุปกรณ์ผ่านช่องทางที่ปลอดภัยได้สำเร็จเท่านั้น เนื่องจากการติดตั้งใช้งานช่องทางที่ปลอดภัยไม่ใช่ข้อกำหนดในการปฏิบัติตามข้อกำหนด CDD คุณจึงข้ามการทดสอบนี้ในบิลด์ที่ไม่สามารถแก้ไขข้อบกพร่องได้ (ผู้ใช้) ได้ แต่เฉพาะในกรณีที่คุณต้องการเลือกไม่ใช้การรองรับฟีเจอร์การซิงค์สิทธิ์ CDM

การทดสอบต้องผ่านในบิลด์ที่แก้ไขข้อบกพร่องได้โดยไม่มีข้อยกเว้น

ข้อกำหนดเบื้องต้นสำหรับการทดสอบในบิลด์ที่แก้ไขข้อบกพร่องไม่ได้

หากคุณไม่ได้รับการยกเว้น ให้ตรวจสอบว่าคุณมีคุณสมบัติตรงตามข้อกำหนดเบื้องต้นต่อไปนี้

ช่องทางที่ปลอดภัยใช้ AVF (AttestationVerificationFramework) เพื่อยืนยัน ความน่าเชื่อถือของฮาร์ดแวร์ การรับรองที่ทั้ง 2 ฝ่ายสร้างขึ้นจะมีข้อมูลหลายอย่างเกี่ยวกับตัวเองเพื่อยืนยันว่าไม่มีการดัดแปลงระบบโดยไม่ได้รับอนุญาต AVF จะตรวจสอบสถานะต่อไปนี้ ในระหว่างกระบวนการยืนยัน

  • อุปกรณ์มีสิทธิ์เข้าถึงอินเทอร์เน็ต
  • อุปกรณ์ใช้การบูตที่ยืนยันแล้ว และต้องลงนามในบิลด์ด้วยคีย์เวอร์ชันที่เผยแพร่ ไม่ใช่คีย์สำหรับนักพัฒนาซอฟต์แวร์
  • อุปกรณ์ล็อก Bootloader อยู่ ดูวิธีการโดยละเอียดได้ที่ การล็อก Bootloader
  • ระดับแพตช์ของระบบปฏิบัติการ การเปิดเครื่องด้วยคีย์ และผู้จำหน่ายคีย์อยู่ภายใน 12 เดือน อย่าใช้บิลด์ที่เก่ากว่า 1 ปี
  • การรับรองอุปกรณ์ได้รับการสนับสนุนจากใบรับรองรูทที่ผู้ให้บริการรายใดรายหนึ่งอนุมัติ ระบุใบรับรองรูทที่เชื่อถือได้ใน vendor_required_attestation_certificates.xml การซ้อนทับทรัพยากร

เรียกใช้การทดสอบฝั่งโฮสต์

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

  1. ในเวิร์กสเตชันทดสอบ ให้เปิดcts-v-hostคอนโซล จากไดเรกทอรีที่คลายแพ็กเกจ ZIP ของ CTS-V

    ./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefed
    
  2. จากภายในแอป CTS-V ใน DUT ให้คลิกการทดสอบฝั่งโฮสต์ รูปที่ 4 แสดงการทดสอบฝั่งโฮสต์ในแอป CTS-V

    การทดสอบฝั่งโฮสต์ในแอป CTS-V

    รูปที่ 4 การทดสอบฝั่งโฮสต์ในแอป CTS-V

    ระบบจะแสดงรายการโมดูลการทดสอบแบบหลายอุปกรณ์ฝั่งโฮสต์สำหรับการทดสอบ

  3. ในคอนโซลโฮสต์ CTS-V ให้ใช้คำสั่งต่อไปนี้เพื่อเรียกใช้การทดสอบแบบหลายอุปกรณ์ ซึ่งใช้การตั้งค่ามาตรฐานแบบ 2 อุปกรณ์

    run cts-v-host-multidevice-default
    

    ผลลัพธ์จะปรากฏใต้โมดูลการทดสอบแต่ละโมดูลในแอป CTS-V บน DUT การทดสอบ ที่ทำเครื่องหมายเป็นสีเขียวผ่านแล้ว ส่วนการทดสอบที่ทำเครื่องหมายเป็นสีแดงไม่ผ่าน

    รูปที่ 5 แสดงตัวอย่างผลลัพธ์สำหรับการทดสอบ CtsCompanionDeviceManager

    ผลการทดสอบแบบหลายอุปกรณ์ฝั่งโฮสต์ในแอป CTS-V

    รูปที่ 5 ผลการทดสอบแบบหลายอุปกรณ์ฝั่งโฮสต์ในแอป CTS-V

  4. ในคอนโซลโฮสต์ CTS-V ให้ใช้คำสั่งต่อไปนี้เพื่อเรียกใช้การทดสอบแบบอินเทอร์แอกทีฟ

    run cts-v-host-interactive
    

    ผลลัพธ์จะปรากฏใต้โมดูลการทดสอบแต่ละโมดูลในแอป CTS-V บน DUT การทดสอบ ที่ทำเครื่องหมายเป็นสีเขียวผ่านแล้ว ส่วนการทดสอบที่ทำเครื่องหมายเป็นสีแดงไม่ผ่าน

  5. สำหรับการทดสอบแต่ละรายการที่ต้องมีการตั้งค่าเพิ่มเติม ให้เรียกใช้การทดสอบแยกกันโดยใช้คำสั่งต่อไปนี้

    run cts-v-host -m test_module_name
    

    เช่น หากต้องการเรียกใช้การทดสอบ NFC ให้ใช้คำสั่งนี้

    run cts-v-host -m CtsNfcHceMultiDeviceTestCases
    

    ผลลัพธ์จะปรากฏใต้โมดูลการทดสอบแต่ละโมดูลในแอป CTS-V บน DUT การทดสอบ ที่ทำเครื่องหมายเป็นสีเขียวผ่านแล้ว ส่วนการทดสอบที่ทำเครื่องหมายเป็นสีแดงไม่ผ่าน

เรียกใช้การทดสอบการเชื่อมต่อ AP ของ Wi-Fi

คุณเรียกใช้การทดสอบการเชื่อมต่อ AP ของ Wi-Fi ได้ 2 วิธีดังนี้

  • ตัวเลือกที่ 1: ใช้เครือข่าย Wi-Fi ที่มีอยู่ซึ่งคุณตั้งค่าไว้สำหรับ CTS-V
  • ตัวเลือกที่ 2: ตั้งค่า AP ที่ตั้งโปรแกรมได้

ตัวเลือกที่ 1: ใช้เครือข่าย Wi-Fi ที่มีอยู่ซึ่งคุณตั้งค่าไว้สำหรับ CTS-V

วิธีเรียกใช้การทดสอบการเชื่อมต่อ Wi-Fi AP ในเครือข่าย Wi-Fi ที่มีอยู่

  1. แก้ไขไฟล์การกำหนดค่า Testbed (WifiConnectionTestbed.yaml) ไฟล์นี้อยู่ในไดเรกทอรีที่คลายซิป CTS Verifier เช่น

    ./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yaml
    
  2. เปลี่ยนค่าของช่อง wifi_ssid และ wifi_password เป็น SSID และรหัสผ่านของเครือข่าย Wi-Fi ตัวอย่างต่อไปนี้แสดงตำแหน่ง ของการตั้งค่าเหล่านี้

    TestBeds:
    - Name: WifiConnectionTestbed
    Controllers:
      AndroidDevice: '*'
    TestParams:
      use_programmable_ap: False
      wifi_ssid: WIFI-SSID
      wifi_password: WIFI-PASSWORD
    
  3. ในคอนโซลโฮสต์ CTS-V ให้เรียกใช้คำสั่งต่อไปนี้

    run cts-v-host -m CtsWifiConnectionTests
    

ตัวเลือกที่ 2: เรียกใช้ด้วย AP ที่ตั้งโปรแกรมได้

วิธีเรียกใช้การทดสอบการเชื่อมต่อ AP ของ Wi-Fi ใน AP ที่ตั้งโปรแกรมได้

  1. แก้ไขไฟล์การกำหนดค่า Testbed (WifiConnectionTestbed.yaml) ไฟล์นี้อยู่ในไดเรกทอรีที่คลายซิป CTS Verifier เช่น

    ./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yaml
    
  2. เปลี่ยนค่าของ hostname เป็นที่อยู่ IP ของ AP ตาม การตั้งค่า SSH ในเครื่อง หากต้องการระบุที่อยู่ IP โปรดดูค้นหาที่อยู่ IP ของ AP ตัวอย่างต่อไปนี้แสดงตำแหน่ง ของการตั้งค่า hostname

    TestBeds:
    - Name: WifiConnectionTestbed
      Controllers:
        AndroidDevice: '*'
        # Specify settings for the AP.
        OpenWrtDevice:
        - hostname: AP-IP
          skip_init_reboot: True
      TestParams:
        use_programmable_ap: True
    
  3. ในคอนโซลโฮสต์ CTS-V ให้เรียกใช้คำสั่งต่อไปนี้

    run cts-v-host -m CtsWifiConnectionTests
    

เรียกใช้การทดสอบฝั่งโฮสต์ของ USB

Android 17 มีการทดสอบฝั่งโฮสต์ของ CTS-V ผ่าน USB ซึ่ง ต้องใช้ adb ผ่าน Wi-Fi เพื่อเรียกใช้

การทดสอบ USB บางอย่างต้องใช้โฮสต์ CTS-V เพื่อเข้าถึง SystemAPI ที่มีสิทธิ์ซึ่งแอป CTS-V ปกติเข้าถึงไม่ได้ การทดสอบเหล่านี้เป็นแบบไม่ผูกมัด และต้องใช้ adb ผ่าน Wi-Fi

คุณต้องใช้อุปกรณ์เสริม Type-C ต่อไปนี้หาก DUT รองรับการรายงาน ประเภท BC 1.2 ของพอร์ตพาร์ทเนอร์หรือโปรไฟล์การจ่ายไฟ USB ใน UsbPort.java

  • ที่ชาร์จ USB Type-C Power Delivery (PD)
  • พอร์ตปลายทาง (SDP) มาตรฐานการชาร์จแบตเตอรี่ผ่าน USB 1.2 (BC 1.2) พอร์ตเหล่านี้จำกัดการจ่ายกระแสไฟ 500 mA หรือ 900 mA ให้กับ DUT และมักพบในพอร์ต USB ของฮับภายนอก
  • พอร์ตดาวน์สตรีมการชาร์จ USB BC 1.2 (CDP) พอร์ตเหล่านี้สามารถจ่ายกระแสไฟฟ้า 1.5 A ให้กับ DUT และข้อมูลได้ พอร์ต Type-C ในแล็ปท็อปหรือ คอมพิวเตอร์มักจะเป็น CDP
  • พอร์ตชาร์จเฉพาะ (DCP) USB BC 1.2 พอร์ตเหล่านี้สามารถจ่ายกระแสไฟฟ้า 1.5 A ให้กับ DUT ได้โดยไม่ต้องใช้ข้อมูล ที่ชาร์จ USB Type-C PD ใน รายการนี้มีแนวโน้มที่จะเป็น DCP
  1. เชื่อมต่อ DUT โดยใช้ adb ผ่าน Wi-Fi ดูรายละเอียดการตั้งค่าได้ที่เชื่อมต่อกับอุปกรณ์ผ่าน Wi-Fi

  2. ถอดอุปกรณ์ออกจากพอร์ต USB ทั้งหมด การทดสอบจะล้มเหลว หากอุปกรณ์เชื่อมต่อกับโฮสต์ USB หรืออุปกรณ์เสริมใดๆ เมื่อเรียกใช้คำสั่งทดสอบ

  3. เรียกใช้คำสั่งทดสอบต่อไปนี้

    run cts-v-host -m CtsUsbTypecTestCases
    

หลังจากการทดสอบ ผลลัพธ์จะปรากฏในแอป CTS-V ในส่วนการทดสอบฝั่งโฮสต์ตามที่แสดงในรูปภาพต่อไปนี้

การทดสอบ USB ฝั่งโฮสต์ในแอป CTS-V

รูปที่ 6 การทดสอบ USB ฝั่งโฮสต์ในแอป CTS-V

ชุด CtsUsbTypecTestCases ในแอป USB CTS-V ฝั่งโฮสต์

รูปที่ 7 ชุดทดสอบ CtsUsbTypecTestCases ในแอป USB CTS-V ฝั่งโฮสต์

แก้ปัญหาการทดสอบแบบหลายอุปกรณ์

ส่วนนี้จะช่วยคุณแก้ปัญหาที่พบได้ทั่วไป

ไม่ได้รับหมายเลขโทรศัพท์ระหว่าง CtsTelecomTest

หากได้รับข้อความแสดงข้อผิดพลาด Failed to get phone number for <serial> ให้ทำตามขั้นตอนต่อไปนี้

  1. ตรวจสอบว่า DUT แต่ละเครื่องได้ติดตั้งซิมการ์ดแล้ว

  2. หากข้อผิดพลาดยังคงอยู่ ซิมการ์ดอาจไม่รองรับการดึงหมายเลขอัตโนมัติ ในกรณีนี้ คุณต้องระบุหมายเลขโทรศัพท์อย่างชัดเจนในคำสั่ง

    เช่น สำหรับ DUT 1 (ซีเรียล 17011FDEE0002N หมายเลขโทรศัพท์ 555-0000) และ DUT 2 (ซีเรียล R3CN90YNAR หมายเลขโทรศัพท์ 555-1111) ให้ต่อท้ายอาร์กิวเมนต์ต่อไปนี้ ในคำสั่ง run cts-v-host

    --module-arg CtsTelecomTest:dut_serial:17011FDEE0002N \
    --module-arg CtsTelecomTest:dut_phone_number:555-0000 \
    --module-arg CtsTelecomTest:ref_phone_number:555-1111
    

ไม่มีการตอบสนองจากเซิร์ฟเวอร์ระหว่าง CtsMultiDeviceGenericRangingAccuracyTests

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

mobly.snippet.errors.ProtocolError: <AndroidDevice|Initiator> No response from server. Check the device logcat for crashes.

หากต้องการแก้ไขปัญหานี้ ให้ปิดใช้การจำกัดในเบื้องหลังหรือเพิ่มแพ็กเกจต่อไปนี้ลงในรายการที่อนุญาต

แพ็กเกจ ชื่อที่แสดง
com.google.snippet.uwb CtsUwbSnippetApp
com.google.snippet.ranging CtsRangingSnippetApp
com.google.snippet.bluetooth CtsBluetoothMultiDeviceSnippetApp
com.google.android.mobly.snippet.bundled androidx.multidex.MultDexApplication

แก้ไขปัญหาไม่มีการตอบกลับสำหรับ GetFirmwareVersion ระหว่างการทดสอบ NFC

หากคุณได้รับข้อความ verify_firmware_version RuntimeError: No response for GetFirmwareVersion ขณะทำการทดสอบแบบหลายอุปกรณ์ แสดงว่าการทดสอบ เข้าถึงบอร์ด PN532 NFC ไม่ได้

หากต้องการแก้ไขปัญหานี้ ให้ระบุเส้นทางแบบอนุกรมที่บอร์ด NFC PN532 ใช้ในโฮสต์ เช่น dev/ttyUSB1 จากนั้นระบุด้วยตนเองโดยใช้อาร์กิวเมนต์ --module-arg ในคอนโซล

run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1

แก้ไขข้อความแสดงข้อผิดพลาด "ธุรกรรมไม่สำเร็จ" ระหว่างการทดสอบ NFC

หากคุณได้รับข้อความ Transaction failed, check device logs for more information. สำหรับกรณีทดสอบ NFC ทั้งหมด อาจเป็นเพราะชิป NFC ของ DUT ตรวจไม่พบ PN532

หากคุณมีอุปกรณ์หลายเครื่องที่เชื่อมต่อกับโฮสต์ และอุปกรณ์บางเครื่องไม่มี PN532 วางอยู่ด้านบน ระบบอาจเลือก DUT ที่ไม่ถูกต้อง ดูข้อมูลเพิ่มเติมได้ที่ตั้งค่าการทดสอบ NFC

หากต้องการแก้ไขปัญหานี้ ให้ทำอย่างใดอย่างหนึ่งต่อไปนี้

  • ตั้งค่าหมายเลขซีเรียลของ DUT ที่ถูกต้องในคำสั่งทดสอบฝั่งโฮสต์โดยใช้แฟล็ก -s

  • ยกเลิกการเชื่อมต่ออุปกรณ์ทั้งหมดที่ไม่ใช่ DUT จากโฮสต์

ระบบจะไม่สนใจกรณีทดสอบ CDM test_permissions_sync

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