این سند نحوه اجرای تستهای NFC روی چند دستگاه را توضیح میدهد.
پیش نیازها را برآورده کنید
قبل از اجرای تستهای NFC روی چند دستگاه، موارد زیر را انجام دهید:
- دستگاهی را با پیادهسازی اندروید ۱۵ خود آماده کنید.
- الزامات CTS-V را دنبال کنید.
- تنظیمات CTS-V را دنبال کنید.
یک دستگاه DUT و یک دستگاه خواننده NFC مدل PN532 را برای آزمایش آماده کنید.
پس از اتمام مراحل قبلی، این مراحل را دنبال کنید تا یک DUT و یک خواننده NFC PN532 را برای آزمایش آماده کنید:
- DUT را از طریق USB به یک دستگاه میزبان وصل کنید.
- مجوزهای لازم برای دسترسی میزبان به DUT از طریق ADB را اعطا کنید.
برنامه تأییدکننده CTS (
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فایلهای APK مورد نیاز برای تست NFC را نصب کنید:
cd MultiDevice adb install -r -g NfcEmulatorTestApp.apk
NFC را برای DUT تنظیم کنید
برای اجرای تنظیمات NFC برای DUT، این مراحل را دنبال کنید:
- در DUT، به منوی تنظیمات بروید.
- به دنبال بخش NFC یا دستگاههای متصل باشید.
- مطمئن شوید که کلید NFC روشن است.
یک تراشه NFC را روی خواننده NFC گوشی قرار دهید:
- یک تراشه NFC مدل PN532 تهیه کنید. ما مدل All-In-One PN532 بدون بلوتوث را توصیه میکنیم.
- تراشه NFC مدل PN532 را با استفاده از کابل USB به میزبان لینوکس وصل کنید.
- تراشه PN532 NFC را مطابق تصویر زیر روی خواننده NFC گوشی قرار دهید:

شکل ۱. محل قرارگیری تراشه NFC.
محیط آزمایش را تنظیم کنید
برای راهاندازی محیط آزمایش، این مراحل را دنبال کنید:
برای تنظیم محیط آزمایش، این دستورات را اجرا کنید:
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با تنظیم شناسههای سریال دستگاه 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:
برنامه CTS-V را باز کنید و روی تستهای NFC ضربه بزنید:

شکل ۲. اپلیکیشن CTS-V.
پنجره اطلاعات با لیستی از موارد آزمایش ظاهر میشود:

شکل 3. موارد آزمایش برنامه CTS-V.
تستها را روی هاست خود اجرا کنید:
MultiDevice$ python3 tools/run_all_tests.pyپس از اتمام آزمایشها، نتایج آزمایش در برنامه CTS-V بهروزرسانی میشوند. آزمایشهای موفق سبز رنگ هستند:

شکل ۴. نتایج آزمایش CTS-V.
اگر هرگونه خطایی را مشاهده کردید که با رنگ قرمز مشخص شده است، از دستور زیر برای اجرای مجدد تستهای ناموفق استفاده کنید:
python3 tools/run_all_tests.py --test_cases "`TestCaseA`" "`TestCaseB`" --test_files "`TestFileA`"کجا:
-
TestCaseAوTestCaseBنامهای Test Caseهایی هستند که در 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"-