تحتوي هذه الصفحة على تعليمات حول استخدام اختبارات Better Together CTS Verifier (CTS-V) لنظام التشغيل Android 16 QPR2 أو الإصدارات الأحدث.
إعداد اختبارات على أجهزة متعددة من جانب المضيف
يوضّح هذا القسم كيفية إعداد اختبارات على أجهزة متعددة.
- تأكَّد من أنّ جهاز الكمبيوتر المكتبي يستوفي متطلبات نظام التشغيل لأداة CTS.
اتّبِع الخطوتَين 2 و5 من مقالة تثبيت برامج سطح المكتب لتثبيت adb وAAPT2 وPython والتأكّد من تثبيتها بشكل صحيح على جهاز الكمبيوتر.
- يجب أن يكون إصدار Python هو 3.11 أو إصدار أحدث. لتحديد إصدار Python، شغِّل
python3 --version. إذا كان الإصدار أقل من 3.11، ثبِّت أحدث إصدار رسمي من Python. لمزيد من المعلومات، يُرجى الاطّلاع على قسم "عمليات التنزيل" فيpython.org. - تتطلّب بعض الاختبارات أن يتضمّن المضيف وحدة Python
venv. في أنظمة Debian وUbuntu، قد لا تكون هذه الوحدة مثبَّتة تلقائيًا. لتحديد ما إذا كان إصدار Python يتضمّن الوحدةvenv، شغِّلpython3 -m venv venv. إذا فشل هذا الأمر، ستظهر رسالة خطأ. اتّبِع التعليمات لتثبيت حزمةpython3.x-venv.
- يجب أن يكون إصدار Python هو 3.11 أو إصدار أحدث. لتحديد إصدار Python، شغِّل
جهِّز جهازَين متطابقَين قيد الاختبار (DUT)، مع إعداد CTS-V على كل منهما.
- للحصول على معلومات حول إعداد جهاز قيد الاختبار، يُرجى الاطّلاع على إعداد الجهاز قيد الاختبار.
- للحصول على تعليمات حول إعداد CTS-V، يُرجى الاطّلاع على مقالة الإعداد.
انتقِل إلى قسم الإعداد لنوع الاختبار:
- لإجراء اختبارات NFC، انتقِل إلى إعداد اختبارات NFC.
- بالنسبة إلى اختبارات اتصال نقطة وصول Wi-Fi، انتقِل إلى إعداد اختبارات اتصال نقطة وصول Wi-Fi.
- لاختبار وحدة CDM، انتقِل إلى إعداد اختبارات عادية على جهازَين ثم إلى إعداد اختبارات CDM.
إذا لم يكن الاختبار في هذه القائمة، انتقِل إلى إعداد اختبارات عادية على جهازَين.
إعداد اختبارات NFC
تستخدم اختبارات NFC جهازًا واحدًا قيد الاختبار وشريحة NFC واحدة من طراز PN532.
لإعداد اختبارات NFC، اتّبِع الخطوات التالية:
- اشترِ شريحة PN532 NFC. ننصح باستخدام All-In-One PN532.
على الجهاز قيد الاختبار، انتقِل إلى تطبيق الإعدادات.
فعِّل ميزة الاتصال القصير المدى (NFC).
ضَع شريحة NFC في الموضع التالي:
بالنسبة إلى الهواتف، ضَع قارئ NFC الخاص بالجهاز قيد الاختبار كما هو موضّح في الشكل 1:

الشكل 1. تحديد موضع شريحة NFC
بالنسبة إلى أنواع الأجهزة الأخرى، ضَع الشريحة بجانب هوائي الاتصال بالحقل القريب (NFC) للجهاز.
وصِّل شريحة PN532 NFC بمحطة عمل الاختبار باستخدام كابل USB.
اختياري: إعداد اختبارات اتصال نقطة وصول Wi-Fi
تختبر اختبارات الاتصال بنقطة وصول Wi-Fi (AP) (CtsWifiConnectionTests) إمكانية الاتصال بين الجهاز قيد الاختبار ونقطة الوصول. ننصحك بشدة بتنفيذ هذه الاختبارات، ولكنها غير مطلوبة في حزمة اختبار التوافق (CTS) لنظام التشغيل Android 16 16 QPR2.
تتطلّب هذه الاختبارات جهازًا قيد الاختبار ونقطة وصول OpenWrt Banana Pi R3.
لإعداد اختبارات اتصال نقطة وصول Wi-Fi، اتّبِع الخطوات التالية:
اشترِ نقطة وصول Banana Pi R3 والملحقات المُدرَجة في هذا الجدول:
اسم الكمية لوحة BPi-R3، مشابهة للّوحة Banana Pi BPI-R3 Router Board التي تتوافق مع تصميم شريحة MediaTek MT7986، وتتيح استخدام شبكة Wi-Fi 6 وذاكرة وصول عشوائي (RAM) بسعة 2 غيغابايت وذاكرة فلاش eMMC بسعة 8 غيغابايت 1 علبة ألومنيوم BPi-R3، مشابهة لعلبة BPI-R3 Iron 1 مشتّت حراري من الألومنيوم BPi-R3 (مروحة تبريد)، مشابه للمشتّت الحراري من الألومنيوم BPI-R3 مع مروحة 1 هوائي بتردد 2 و5 غيغاهرتز مع كابل، يشبه هوائي 5DB في متجر BPI 8 محوّل الطاقة، مشابه لمصدر الطاقة بتيار مستمر 12 فولت/2 أمبير 1 لإجراء عملية الشراء، يُرجى الاطّلاع على قسم سهولة الشراء في صفحة Banana Pi BPI-R3.
اضبط إعدادات نقطة الوصول. للحصول على معلومات حول إعداد نقطة الوصول، يُرجى الاطّلاع على إعداد نقطة وصول Banana Pi BPI-R3.
اختياري: إذا لم يكن لديك صندوق حماية، ننصحك باستخدام صندوق الحماية JTP-SR101. يمكنك شراء هذا الصندوق باستخدام المعلومات التالية:
Dong Guan Zheng Sheng Electronics Technology Co., LTD
Bohui Industrial Park, Panlong Road, Liaobu Town, Dongguan City, Guangdong Province, China
Contact: Forest Pan
Email: forest.pan@jtpmak.cn
Phone (China): +86 18676993556وصِّل الجهاز قيد الاختبار ونقطة الوصول بالجهاز المضيف وضعهما في صندوق حماية من الترددات اللاسلكية. يجب أن تكون المسافة بين الجهاز قيد الاختبار ونقطة الوصول 10 سم على الأقل. يوضّح الشكل 2 هذا الإعداد:

الشكل 2. جهاز الاختبار ونقطة الوصول في صندوق الحماية
استخدِم بروتوكول SSH للتأكّد من إمكانية الوصول إلى نقطة الوصول من المضيف.
إعداد اختبارات عادية على جهازَين
بالنسبة إلى عملية الإعداد التلقائية لجهازَين:
- ضَع جهازَي Android متطابقَين على بُعد 20 سم تقريبًا.
لإعداد بيئة نظيفة، ضَع كلا الجهازَين في صندوق محمي.
اختياري: إعداد أداة تتبُّع OTA لتصحيح أخطاء Wi-Fi
إعداد اختبارات إدارة حقوق الرقمية (DRM)
تتضمّن حالة الاختبار test_permissions_sync() سلوكًا مختلفًا حسب نوع الإصدار للأجهزة التي يتم تنفيذ الاختبار عليها. من الضروري أن يختبر المصنّعون الأصليون للأجهزة كلاً من الإصدارات التي يمكن تصحيح أخطائها (userdebug أو eng) والإصدارات التي لا يمكن تصحيح أخطائها (user)، وأن تجتاز الاختبارات كلا النوعين.
الإعفاء
لا يشترط بند "اتفاقية المطوّرين" الخاص بتنفيذ واجهة برمجة التطبيقات لمزامنة الأذونات سوى أن تكون قادرة على نقل البيانات بنجاح بين الأجهزة عبر قناة آمنة. بما أنّ تنفيذ القناة الآمنة ليس من متطلبات الامتثال لمتطلبات التحقّق من هوية العميل، يمكن تخطّي هذه الاختبارات في الإصدارات غير القابلة لتصحيح الأخطاء (إصدارات المستخدمين)، ولكن فقط إذا أردت إيقاف ميزة مزامنة أذونات CDM.
يجب أن تجتاز الاختبارات الإصدارات التي يمكن تصحيح أخطائها بدون استثناء.
المتطلبات الأساسية للاختبار على الإصدارات غير القابلة لتصحيح الأخطاء
إذا لم تكن معفيًا بموجب بنود الإعفاء السابقة، يُرجى التأكّد من استيفاء المتطلبات الأساسية التالية.
تستخدم القناة الآمنة إطار عمل AVF (AttestationVerificationFramework) للتحقّق من
موثوقية الأجهزة. تحتوي شهادات الإثبات التي يصدرها الطرفان على عدة معلومات عن كل منهما لضمان عدم حدوث أي تغيير غير مصرّح به في نظامهما. تتحقّق ميزة "التحقّق من صحة الجهاز" من الحالات التالية
أثناء عملية التحقّق:
- الجهاز متصل بالإنترنت
- يستخدم الجهاز ميزة "التحقّق من صحة عملية الإقلاع"، ويجب توقيع الإصدار باستخدام مفتاح إصدار، وليس مفتاح تطوير.
- برنامج إقلاع الجهاز مقفل. للحصول على تعليمات مفصّلة، يُرجى الاطّلاع على مقالة قفل برنامج التشغيل.
- أن تكون مستويات تصحيح نظام التشغيل ومفتاح التشغيل ومفتاح المورّد في غضون 12 شهرًا لا تستخدِم إصدارًا أقدم من عام
تستند عملية إثبات صحة الجهاز إلى إحدى شهادات الجذر التي وافق عليها المورّد. حدِّد شهادات الجذر الموثوق بها في تراكب الموارد
vendor_required_attestation_certificates.xml.
إجراء اختبارات على أجهزة متعددة من جهة المضيف (الإصدار 16 من AOSP أو إصدار أحدث)
يتيح الإصدار 16 من CTS Verifier إجراء اختبارات على أجهزة متعددة من جهة المضيف. يمكن تنفيذ هذه الاختبارات باستخدام نصوص برمجية مبرمَجة على المضيف، بدلاً من عملية الاختبار اليدوي على الجهاز. بعد اكتمال كل اختبار، يتم تلقائيًا تحميل النتائج إلى الجهاز قيد الاختبار وعرضها في تطبيق CTS Verifier.
يوضّح هذا القسم كيفية إجراء اختبارات الأجهزة المتعدّدة من جهة المضيف.
إجراء اختبارات على أجهزة متعددة
لإجراء اختبار على أجهزة متعددة، اتّبِع الخطوات التالية:
على محطة العمل الاختبارية، شغِّل وحدة تحكّم
cts-v-hostمن الدليل الذي تم فيه فك ضغط حزمة CTS-V zip:./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefedمن داخل تطبيق CTS Verifier على الجهاز قيد الاختبار، انقر على الاختبارات من جهة المضيف. يوضّح الشكل 3 الاختبارات التي يتم إجراؤها على الجهاز المضيف في تطبيق CTS Verifier:
الشكل 3. اختبارات الأجهزة المتعدّدة من جهة المضيف في تطبيق CTS Verifier
يتم عرض قائمة بوحدات اختبار متعددة الأجهزة من جهة المضيف.
حدِّد اسم الوحدة الاختبارية التي تريد تنفيذها. على سبيل المثال، يتم إدراج وحدة CompanionDeviceManager على النحو التالي: CtsCompanionDeviceManagerMultiDeviceTestCases.
في وحدة تحكّم cts-v-host، نفِّذ الأمر التالي:
run cts-v-host -m test_module_nameمثلاً:
run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCasesبعد أن تنتهي وحدة تحكّم xTS من تنفيذ الاختبارات، تظهر النتائج في تطبيق CTS Verifier. تشير الاختبارات التي تم وضع علامة خضراء بجانبها إلى أنّها اجتازت الاختبار. تعذّر اجتياز الاختبارات المميّزة باللون الأحمر. تعرض "الشكل 4" نتائج نموذجية لاختبارات CtsCompanionDeviceManager:
الشكل 4. نتائج اختبار الأجهزة المتعدّدة من جهة المضيف في تطبيق CTS Verifier
اختياري: إجراء اختبارات اتصال بنقطة وصول Wi-Fi
اتّبِع الخطوات التالية لإجراء اختبارات اتصال نقطة وصول Wi-Fi:
عدِّل ملف إعداد Testbed (
WifiConnectionTestbed.yaml). يوجد هذا الملف في الدليل الذي تم فيه فك ضغط CTS-Verifier:./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yamlغيِّر قيمة الحقل
hostnameإلى عنوان IP الخاص بنقطة الوصول، استنادًا إلى إعدادات SSH المحلية. لتحديد عنوان IP، يُرجى الاطّلاع على العثور على عنوان IP لنقطة الوصول.يوضّح المثال التالي موضع الحقل
hostnameفي الملفWifiConnectionTestbed.yaml:TestBeds: - Name: WifiConnectionTestbed Controllers: # Specify settings for the AP. OpenWrtDevice: - hostname: AP-IP skip_init_reboot: Trueفي وحدة تحكّم cts-v-host، نفِّذ الأمر التالي:
run everything -m CtsWifiConnectionTests
تحديد المشاكل في الاختبارات على أجهزة متعددة وحلّها
يقدّم هذا القسم مساعدة في تحديد المشاكل المحتملة وحلّها.
حلّ مشكلة عدم تلقّي أي ردّ على GetFirmwareVersion أثناء اختبارات NFC
إذا تلقّيت الرسالة verify_firmware_version RuntimeError: No response
for GetFirmwareVersion أثناء إجراء اختبارات الأجهزة المتعددة، يعني ذلك أنّه لا يمكن للاختبارات الوصول إلى لوحة PN532 NFC.
لحلّ هذه المشكلة، حدِّد مسار الرقم التسلسلي الذي تستخدمه لوحة PN532 NFC على المضيف، مثل dev/ttyUSB1، ثم حدِّده يدويًا باستخدام الوسيطة --module-arg في وحدة التحكّم:
run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1
حلّ رسالة الخطأ "تعذّر إجراء المعاملة" أثناء اختبارات الاتصال القصير المدى (NFC)
إذا تلقّيت الرسالة Transaction failed, check device logs for more
information. في جميع حالات اختبار الاتصال القصير المدى (NFC)، من المحتمل أن يكون ذلك بسبب عدم قدرة شريحة الاتصال القصير المدى (NFC) في الجهاز الخاضع للاختبار على رصد PN532.
إذا كانت لديك أجهزة متعددة متصلة بالجهاز المضيف، ولم يكن بعضها مزوّدًا بشريحة PN532 في الأعلى، قد يكون تم اختيار الجهاز الخاطئ. لمزيد من المعلومات، يُرجى الاطّلاع على إعداد اختبارات NFC.
لحلّ هذه المشكلة، اتّبِع أحد الإجراءَين التاليَين:
اضبط الرقم التسلسلي الصحيح للجهاز الخاضع للاختبار في أمر الاختبار على الجهاز المضيف باستخدام العلامة
-s.افصِل جميع الأجهزة غير جهاز الاختبار عن الجهاز المضيف.
تم تجاهل حالة اختبار CDM test_permissions_sync
إذا كان الاختبار يتم إجراؤه على أجهزة لا يمكن تصحيح أخطائها، اطّلِع على ما إذا كنت معفيًا. في حال عدم توفّرها، تأكَّد من أنّ كلا الجهازين يستوفيان المتطلبات الأساسية.