يوضّح هذا المستند كيفية إجراء اختبارات NFC على أجهزة متعددة.
استيفاء المتطلبات الأساسية
قبل إجراء اختبارات NFC على أجهزة متعددة، عليك اتّباع الخطوات التالية:
تجهيز جهاز DUT وقارئ NFC PN532 لإجراء الاختبار
بعد الانتهاء من الخطوات السابقة، اتّبِع الخطوات التالية لإجراء الاختبار: استعد لاختبار DUT وجهاز قراءة NFC PN532 باتّباع الخطوات التالية:
- وصِّل جهاز DUT بجهاز مضيف عبر USB.
- امنح المضيف أذونات للوصول إلى جهاز DUT عبر 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 في الهاتف:
- احصل على شريحة NFC من طراز PN532. ننصحك باستخدام الخيار All-In-One PN532، وهو غير BLE.
- وصِّل شريحة NFC PN532 بمضيف 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
يمكنك إعداد سرير الاختبار من خلال ضبط المعرّفات التسلسلية للجهاز على قارئَي DUT وPN532 NFC في
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"