يوضِّح هذا المستند كيفية إجراء اختبارات NFC على أجهزة متعددة.
استيفاء المتطلبات الأساسية
قبل إجراء اختبارات NFC على أجهزة متعددة، عليك اتّباع الخطوات التالية:
تجهيز جهاز DUT وقارئ NFC PN532 لإجراء الاختبار
بعد الانتهاء من الخطوات السابقة، اتّبِع الخطوات التالية لإجراء الاختبار: استعد لاختبار DUT وجهاز قراءة NFC PN532 باتّباع الخطوات التالية:
- وصِّل جهاز DUT بجهاز مضيف عبر USB.
- امنح المضيف أذونات للوصول إلى جهاز DUT عبر ADB.
ثبِّت تطبيق CTS Verifier (
CtsVerifier.apk
) على جهاز الاختبار: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 لوحدة التحكّم في البيانات
اتّبِع الخطوات التالية لتشغيل إعداد NFC لوحدة التحكّم في البيانات:
- على جهاز DUT، انتقِل إلى قائمة الإعدادات.
- ابحث عن قسم الاتصال القصير المدى (NFC) أو الأجهزة المتصلة.
- تأكَّد من تفعيل مفتاح التبديل الخاص بتقنية NFC.
ضَع شريحة NFC على قارئ NFC في الهاتف باتّباع الخطوات التالية:
- احصل على شريحة NFC من طراز PN532. ننصحك باستخدام الوحدة المتكاملة PN532 التي لا تتضمّن بلوتوث منخفض الطاقة.
- اربط شريحة PN532 NFC بالمضيف Linux باستخدام كابل USB.
- ضَع شريحة NFC PN532 فوق قارئ 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
يمكنك إعداد منصة الاختبار من خلال ضبط أرقام التعريف التسلسلية للجهازَين، وهما جهاز الاختبار وPN532 NFC reader في
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"