يوضّح هذا المستند كيفية إجراء اختبارات NFC على أجهزة متعددة.
استيفاء المتطلبات الأساسية
قبل إجراء اختبارات NFC على أجهزة متعددة، اتّبِع الخطوات التالية:
جهِّز جهازًا قيد الاختبار وقارئ NFC PN532 للاختبار.
بعد الانتهاء من الخطوات السابقة، اتّبِع الخطوات التالية لتجهيز جهاز قيد الاختبار وقارئ NFC PN532 للاختبار:
- وصِّل الجهاز قيد الاختبار بجهاز مضيف عبر USB.
- امنح المضيف أذونات للوصول إلى الجهاز الخاضع للاختبار عبر ADB.
ثبِّت تطبيق 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ثبِّت حِزم APK المطلوبة لاختبار NFC:
cd MultiDevice adb install -r -g NfcEmulatorTestApp.apk
إعداد NFC لجهاز الاختبار (DUT)
اتّبِع الخطوات التالية لتشغيل عملية إعداد NFC على الجهاز قيد الاختبار:
- على جهاز DUT، انتقِل إلى قائمة الإعدادات.
- ابحث عن القسم الاتصال القريب المدى (NFC) أو الأجهزة المتصلة.
- تأكَّد من تفعيل مفتاح التبديل الخاص بتقنية NFC.
ضَع شريحة NFC على قارئ NFC في الهاتف:
- احصل على شريحة PN532 NFC. ننصحك باستخدام All-In-One PN532، وهو خيار غير متوافق مع تقنية البلوتوث المنخفض الطاقة (BLE).
- وصِّل شريحة PN532 NFC بمضيف Linux باستخدام كابل USB.
- ضَع شريحة PN532 NFC على قارئ NFC في الهاتف كما هو موضّح في الصورة التالية:
الشكل 1. موضع شريحة NFC
إعداد بيئة الاختبار
اتّبِع الخطوات التالية لإعداد بيئة الاختبار:
نفِّذ الأوامر التالية لإعداد بيئة الاختبار:
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اضبط منصة الاختبار من خلال ضبط أرقام التعريف التسلسلية للأجهزة الخاصة بجهاز الاختبار وجهاز قراءة 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:
الشكل 2. تطبيق CTS-V
تظهر نافذة المعلومات التي تتضمّن قائمة بحالات الاختبار:
الشكل 3. حالات اختبار تطبيق CTS-V
نفِّذ الاختبارات على المضيف:
MultiDevice$ python3 tools/run_all_tests.pyعند اكتمال الاختبارات، يتم تعديل نتائج الاختبار في تطبيق CTS-V، وتظهر الاختبارات الناجحة باللون الأخضر:
الشكل 4. نتائج اختبار CTS-V
إذا ظهرت أي حالات تعذُّر باللون الأحمر، استخدِم الأمر التالي لإعادة تشغيل الاختبارات التي تعذّر تنفيذها:
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"