เรียกใช้การทดสอบ NFC หลายอุปกรณ์ (Android 15)

เอกสารนี้อธิบายวิธีเรียกใช้การทดสอบ NFC แบบหลายอุปกรณ์

มีคุณสมบัติตรงตามข้อกำหนดเบื้องต้น

ก่อนเรียกใช้การทดสอบ NFC แบบหลายอุปกรณ์ ให้ทำดังนี้

  1. เตรียมอุปกรณ์ที่มีการติดตั้งใช้งาน Android 15
  2. ปฏิบัติตามข้อกำหนดของ CTS-V
  3. ทำตามการตั้งค่า CTS-V

เตรียม DUT และเครื่องอ่าน NFC PN532 สำหรับการทดสอบ

หลังจากทำตามขั้นตอนก่อนหน้าเสร็จแล้ว ให้ทำตามขั้นตอนต่อไปนี้เพื่อเรียกใช้ เตรียม DUT และเครื่องอ่าน NFC PN532 สำหรับการทดสอบ

  1. เชื่อมต่อ DUT กับเครื่องโฮสต์ผ่าน USB
  2. ให้สิทธิ์โฮสต์ในการเข้าถึง DUT ผ่าน ADB
  3. ติดตั้งแอป CTS Verifier (CtsVerifier.apk) ใน DUT โดยทำดังนี้

    extract root/out/host/linux-x86/cts-verifier/android-cts-verifier.zip
    
    cd android-cts-verifier
    
    adb install -r -g CtsVerifier.apk
    
  4. ติดตั้ง APK ที่จำเป็นสำหรับการทดสอบ NFC โดยทำดังนี้

    cd MultiDevice
    
    adb install -r -g NfcEmulatorTestApp.apk
    

ตั้งค่า NFC สำหรับ DUT

ทำตามขั้นตอนต่อไปนี้เพื่อตั้งค่า NFC สำหรับ DUT

  1. ไปที่เมนูการตั้งค่าใน DUT
  2. มองหาส่วน NFC หรืออุปกรณ์ที่เชื่อมต่อ
  3. ตรวจสอบว่าสวิตช์เปิด/ปิด NFC เปิดอยู่
  4. วางชิป NFC บนตัวอ่าน NFC ของโทรศัพท์

    1. ซื้อชิป NFC PN532 เราขอแนะนำตัวเลือก All-In-One PN532 ที่ไม่ใช่ BLE
    2. ต่อชิป NFC PN532 กับโฮสต์ Linux โดยใช้สาย USB
    3. วางชิป NFC PN532 เหนือเครื่องอ่าน NFC ของโทรศัพท์ตามที่แสดงในรูปภาพต่อไปนี้

    ตำแหน่งชิป NFC

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

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

ทำตามขั้นตอนต่อไปนี้เพื่อตั้งค่าสภาพแวดล้อมการทดสอบ

  1. เรียกใช้คำสั่งต่อไปนี้เพื่อตั้งค่าสภาพแวดล้อมการทดสอบ

    cd MultiDevice
    
    source build/envsetup.sh
    

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

    หากเห็นข้อความแสดงข้อผิดพลาด libtinfo.so.6: no version information available (required by /bin/sh) ในขณะรัน ให้เรียกใช้คำสั่งต่อไปนี้ เพื่อเปลี่ยนชื่อไฟล์ libtinfo.so.6

    mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bak
    
  2. ตั้งค่า Test Bed โดยตั้งค่ารหัสซีเรียลของอุปกรณ์ DUT และเครื่องอ่าน NFC PN532 ใน MultiDevice/config.yml ดังนี้

    TestBeds:
      - Name: CtsNfcHceMultiDeviceTestCases-py-ctsv
        Controllers:
          AndroidDevice:
            - serial: "<device-id>"
        TestParams:
          pn532_serial_path: "<pn532-serial-path>"
    

เรียกใช้การทดสอบ NFC

วิธีเรียกใช้การทดสอบ NFC

  1. เปิดแอป CTS-V แล้วแตะ NFC Tests

    แอป CTS-V

    รูปที่ 2 แอป CTS-V

    หน้าต่างข้อมูลที่มีรายการกรณีทดสอบจะปรากฏขึ้น

    กรณีทดสอบแอป CTS-V

    รูปที่ 3 กรณีทดสอบแอป CTS-V

  2. เรียกใช้การทดสอบในโฮสต์โดยทำดังนี้

    MultiDevice$ python3 tools/run_all_tests.py
    

    เมื่อการทดสอบเสร็จสมบูรณ์แล้ว ระบบจะอัปเดตผลการทดสอบในแอป CTS-V การทดสอบที่สำเร็จจะมีสีเขียว

    ผลการทดสอบ CTS-V

    รูปที่ 4 ผลการทดสอบ CTS-V

  3. หากเห็นการทดสอบที่ล้มเหลวซึ่งทำเครื่องหมายเป็นสีแดง ให้ใช้คำสั่งต่อไปนี้เพื่อเรียกใช้การทดสอบที่ล้มเหลวอีกครั้ง

    python3 tools/run_all_tests.py --test_cases "`TestCaseA`" "`TestCaseB`" --test_files "`TestFileA`"
    

    สถานที่:

    • TestCaseA และ TestCaseB คือชื่อของกรณีทดสอบตามที่แสดงใน CTS-V
    • TestFileA คือไฟล์ทดสอบที่มีกรณีทดสอบ

    เช่น

    python3 tools/run_all_tests.py --test_cases "test_conflicting_non_payment" "test_conflicting_non_payment_prefix" --test_files "CtsNfcHceMultiDeviceTestCases-py-ctsv"