تست های NFC چند دستگاهی را اجرا کنید

این سند نحوه اجرای تست های 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 را با استفاده از کابل USB به هاست لینوکس وصل کنید.
    3. همانطور که در تصویر زیر نشان داده شده است، تراشه NFC PN532 را روی NFC reader گوشی قرار دهید:

    محل قرارگیری تراشه NFC

    شکل 1. قرار دادن تراشه NFC.

محیط تست را تنظیم کنید

برای اجرای تنظیمات محیط تست مراحل زیر را دنبال کنید:

  1. این دستورات را برای تنظیم محیط تست اجرا کنید:

    cd MultiDevice
    
    source build/envsetup.sh
    

    این دستور پایتون را بررسی می کند و متغیر محیطی 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. با تنظیم شناسه سریال دستگاه NFC خوان DUT و 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"