إعداد الاختبار الآلي لبرنامج CTS

قبل تنفيذ اختبارات CTS المبرمَجة، عليك إعداد بيئتك المادية وإعداد محطة العمل وضبط الجهاز الذي تختبره.

إعداد البيئة المادية

تتطلّب بعض اختبارات CTS استخدام أجهزة خارجية يتم إعدادها بالقرب من الجهاز الخاضع للاختبار. لإعداد بيئتك المادية، اتّبِع الخطوات التالية:

  1. (اختياري) إذا كان الجهاز قيد الاختبار يتوافق مع Bluetooth LE، ضَع ثلاث إشارات Bluetooth LE على الأقل على بُعد 5 أمتار من الجهاز قيد الاختبار لإجراء اختبارات فحص Bluetooth LE. علاوةً على ذلك:

    • ولا تحتاج إلى ضبط إعدادات الإشارات أو إصدار أي شيء محدّد.
    • يمكن أن تكون إشارات البلوتوث من أي نوع، بما في ذلك iBeacon أو Eddystone أو حتى الأجهزة التي تحاكي إشارات البلوتوث المنخفض الطاقة.
  2. ضَع الهاتف أمام مشهد، مثل جدار أو سقف، على مسافة تعادل الحد الأدنى لمسافة التركيز في الجهاز الخاضع للاختبار. علاوةً على ذلك:

    • يجب أن يتوفّر في المشهد إضاءة كافية للسماح لأجهزة الاستشعار الخاضعة للاختبار بالوصول إلى الحد الأقصى المستهدف الذي تم ضبطه لعدد اللقطات في الثانية (FPS) والبقاء عنده، وذلك على النحو المحدّد في CONTROL_AE_TARGET_FPS_RANGE.
    • ينطبق هذا الإعداد على جميع أجهزة استشعار الكاميرا التي أبلغت عنها getCameraIdList، وذلك لأنّ الاختبار يتكرّر على الأجهزة المُدرَجة ويقيس الأداء بشكل فردي.
    • إذا كان الجهاز قيد الاختبار يتيح استخدام كاميرات خارجية، مثل كاميرات الويب التي تعمل بمنفذ USB، وصِّل كاميرا خارجية عند تشغيل مجموعة اختبار التوافق. وفي حال عدم توفّرها، ستتعذّر اختبارات CTS.
  3. (اختياري) إذا كان الجهاز الخاضع للاختبار يتوافق مع نظام تحديد المواقع العالمي (GPS) أو نظام آخر لتحديد المواقع الجغرافية العالمي عبر الأقمار الصناعية (GNSS)، قدِّم إشارة GNSS إلى الجهاز الخاضع للاختبار بمستوى إشارة مناسب للاستقبال واحتساب الموقع الجغرافي. علاوةً على ذلك:

    • يجب أن يتوافق نظام تحديد المواقع العالمي (GPS) مع ICD-GPS-200C.
    • يمكن أن تكون إشارة نظام GNSS من أي نوع، بما في ذلك محاكي الأقمار الصناعية أو مكرّر الإشارات الخارجية.
    • يمكنك وضع الجهاز قيد الاختبار بالقرب من نافذة حتى يتمكّن من تلقّي إشارة GNSS كافية مباشرةً من أحد الأقمار الصناعية.
  4. تأكَّد من أنّ شبكة Wi-Fi تتوافق مع IPv4 وIPv6، وأنّها تتضمّن اتصالاً بالإنترنت مع نظام أسماء النطاقات (DNS) لكل من IPv4 وIPv6، وأنّها تتوافق مع البث المتعدد عبر بروتوكول الإنترنت، ويمكنها التعامل مع الجهاز الخاضع للاختبار باعتباره عميلاً معزولاً.

    إذا لم يكن لديك إمكانية الوصول إلى شبكة IPv6 أصلية أو شبكة مشغّل شبكة جوّال IPv6 أو شبكة VPN لاجتياز اختبارات IPv6، استخدِم نقطة وصول Wi-Fi ونفق IPv6.

  5. تأكَّد من ضبط العلامات UP وBROADCAST وMULTICAST على واجهة Wi-Fi في الجهاز الخاضع للاختبار.

  6. تأكَّد من أنّ واجهة Wi-Fi تتضمّن عناوين IPv4 وIPv6. للاطّلاع على خصائص واجهة Wi-Fi، شغِّل الأمر adb shell ifconfig.

  7. (اختياري) إذا كان جهاز الاختبار (DUT) يتيح Wi-Fi STA أو STA concurrency، يجب إعداد شبكتَي Wi-Fi على الأقل. يجب أن تعمل شبكات Wi-Fi هذه على نطاقات مختلفة باستخدام معرّفات SSID مختلفة أو على معرّف SSID نفسه باستخدام معرّفات BSSID مختلفة.

  8. (اختياري) إذا كان جهازك قيد الاختبار يتيح استخدام وقت الاستجابة لطلبات Wi-Fi، يمكنك إعداد جهاز يتيح استخدام وقت الاستجابة لطلبات Wi-Fi باتّباع الخطوات التالية:

    1. ضَع جهاز Wi-Fi RTT على مسافة 40 قدمًا من الجهاز قيد الاختبار.
    2. شغِّل جهاز Wi-Fi RTT.

    في ما يلي جهازان مقترَحان يتوافقان مع تقنية Wi-Fi RTT: - Google Wifi - نقطة وصول fitlet2 من Compulab (تم ضبطها على نطاق ترددي 40 ميغاهرتز عند 5 غيغاهرتز).

إعداد جهاز الكمبيوتر المكتبي

قبل تشغيل الاختبارات الآلية في CTS، تأكَّد من أنّ جهاز الكمبيوتر المكتبي يستوفي متطلبات الأجهزة ونظام التشغيل وأنّه تم تثبيت البرنامج المناسب عليه، كما هو موضّح في الأقسام التالية.

متطلبات أجهزة Meet

يجب أن يستوفي جهاز الكمبيوتر المكتبي المتوافق مع CTS متطلبات الأجهزة التالية أو يتجاوزها:

  • نظام x86‏ 64 بت

  • يجب توفّر مساحة خالية في القرص لا تقل عن 256 غيغابايت لاستيعاب العدد المتزايد من حالات اختبار CTS وزيادة مساحة حجز مساحة الذاكرة المؤقتة في Java في Tradefed

  • ذاكرة وصول عشوائي (RAM) بسعة 32 غيغابايت على الأقل

استيفاء متطلبات نظام التشغيل

  • يجب أن يعمل جهاز التطوير بنظام Linux 64 بت مع مكتبة GNU C Library (glibc) 2.17 أو إصدار أحدث.

  • يجب ضبط لغة نظام التشغيل على "الإنجليزية" للسماح لـ CTS بتحديد المسار بشكل صحيح.

تثبيت برنامج على الكمبيوتر

لتثبيت برنامج الكمبيوتر المناسب لـ CTS، اتّبِع الخطوات التالية:

  1. ثبِّت حزمة FFmpeg بالإصدار 5.1.3 أو إصدار أحدث.

  2. ثبِّت أحدث إصدارات Android Debug Bridge (adb) وAndroid Asset Packaging Tool (AAPT2) وأضِف موقع هاتين الأداتين إلى مسار النظام على جهازك:

    1. اتّبِع التعليمات في بداية مستندات مدير حزمة تطوير البرامج (SDK) لتثبيت أداة سطر الأوامر sdkmanager. يمكنك العثور على رابط تنزيل أدوات سطر الأوامر في قسم أدوات سطر الأوامر فقط في أسفل صفحة تنزيل استوديو Android.
    2. عدِّل مسار النظام ليشمل موقع الأداة sdkmanager التي تم تثبيتها حديثًا.
    3. باستخدام sdkmanager، ثبِّت أحدث حِزم platform-tools وbuild-tools. تحتوي هذه الحِزم على adb وAAPT2. للحصول على معلومات حول تثبيت الحِزم، يُرجى الاطّلاع على تثبيت الحِزم.
    4. عدِّل المسار ليشمل موقع أداتَي adb وAAPT2 اللتين تم تثبيتهما حديثًا.
    5. تأكَّد من أنّ adb وAAPT2 متوفّران في مسارك.
  3. ثبِّت الإصدار المناسب من حزمة تطوير Java (JDK):

  4. (اختياري) في الإصدارَين 13 و14 من نظام التشغيل Android، ثبِّت virtualenv. يجب استخدام أداة virtualenv لإجراء اختبارات على أجهزة متعددة.

  5. للتأكّد من تثبيت Python، اكتب python3. يجب أن يظهر إصدار Python والتاريخ، ما يشير إلى أنّ Python مثبَّت بشكل صحيح.

  6. نزِّل حِزم CTS وافتحها من عمليات تنزيل مجموعة أدوات اختبار التوافق التي تتوافق مع إصدار Android على أجهزتك وجميع واجهات التطبيق الثنائية (ABI) التي تتوافق معها أجهزتك.

  7. نزِّل أحدث إصدار من ملفات الوسائط في مجموعة اختبار التوافق وافتحه. تتضمّن ملفات الوسائط مقاطع فيديو من فيلم Big Buck Bunny، وهي محمية بموجب حقوق الطبع والنشر الخاصة بمؤسسة Blender Foundation بموجب رخصة المشاع الإبداعي 3.0 مع نسب العمل إلى مؤلفه.

  8. (اختياري) عند تشغيل CTS للمرة الأولى، يتم تنزيل بعض ملفات CTS ذات الصلة بـ Mainline بشكل ديناميكي. واستنادًا إلى سرعة الشبكة، يضيف هذا التنزيل 10 دقائق أو أكثر إلى وقت تشغيل مجموعة اختبار التوافق.

    لتجنُّب وقت التشغيل الإضافي هذا في مجموعة اختبار التوافق، يمكنك تنزيل ملفات مجموعة اختبار التوافق ذات الصلة بمشروع Mainline قبل تشغيل مجموعة اختبار التوافق. للحصول على معلومات حول تنزيل ملفات CTS ذات الصلة بـ Mainline، يُرجى الاطّلاع على تنزيل ملفات CTS ذات الصلة بـ Mainline.

تجهيز الجهاز الخاضع للاختبار (DUT)

بعد إعداد جهاز الكمبيوتر المكتبي، عليك إعداد جهاز قيد الاختبار وضبط إعداداته.

إعداد الجهاز قيد الاختبار

لإعداد الجهاز الخاضع للاختبار، اتّبِع الخطوات التالية:

  1. تأكَّد من أنّ الجهاز قيد الاختبار يعمل بصورة نظام تستند إلى إصدار المستخدم المعروف بتوافقه (Android 4.0 أو إصدار أحدث) من أسماء الرموز والعلامات وأرقام الإصدارات ويستخدم صيغة الإصدار user. لمزيد من المعلومات حول صيغ الإنشاء، يُرجى الاطّلاع على اختيار هدف.

  2. إذا كان الجهاز قيد الاختبار يعمل بالإصدار 13 من نظام التشغيل Android أو إصدار أحدث، تأكَّد من أنّ الإصدار يتضمّن ro.product.first_api_level مضبوطًا على مستوى واجهة برمجة التطبيقات الذي تم إطلاق الجهاز به تجاريًا. لضبط هذه القيمة، عليك إجراء التغيير التالي على ملف device.mk:

    PRODUCT_SHIPPING_API_LEVEL := 21
    

    تعتمد بعض متطلبات CTS على الإصدار الذي تم شحن الجهاز به في الأصل. على سبيل المثال، قد يتم استبعاد الأجهزة التي يتم شحنها في الأصل بإصدارات أقدم من متطلبات النظام التي تنطبق على الأجهزة التي يتم شحنها بإصدارات أحدث. للاطّلاع على قيم مستوى واجهة برمجة التطبيقات الصالحة، راجِع مقالة الأسماء الرمزية والعلامات وأرقام الإصدار. لمزيد من المعلومات حول ro.product.first_api_level، يُرجى الاطّلاع على مستوى واجهة برمجة التطبيقات الخاصة بالمورّد.

    بالنسبة إلى الإصدار 10 من نظام التشغيل Android أو الإصدارات الأقدم، يُرجى الاطّلاع على إعداد CTS (الإصدار 10 من نظام التشغيل Android أو الإصدارات الأقدم).

  3. إذا كان جهازك يتيح إدارة حِزم APEX:

    1. نزِّل حزمة APEX shim لإصدار Android وبنية الأجهزة المحدّدين. يوفّر العمودان الأيمنان في جدول حِزم shim روابط لتنزيل الحزمة.
    2. انسخ الحزمة التي تم تنزيلها إلى /system/apex.
    3. أعِد تسمية الملف إلى com.android.apex.cts.shim.apex.
  4. إذا كان جهازك لا يتيح إدارة حِزم APEX:

    1. نزِّل حِزم APEX shim الخاصة بإصدار Android وبنية الأجهزة المحدّدة. يوفّر العمودان الأيمنان في جدول حِزم shim روابط لتنزيل الحِزم.
    2. انسخ CtsShim.apk إلى /system/app/
    3. أعِد تسمية CtsShim.apk إلى CtsShimPrebuilt.apk
    4. انسخ CtsShimPriv.apk إلى /system/priv-app/
    5. أعِد تسمية CtsShimPriv.apk إلى CtsShimPrivPrebuilt.apk
  5. إذا كان جهازك يعرض أكثر من عنصر آمن واحد:

    1. نزِّل google-cardlet.cap.
    2. انسخ الملف الذي تم تنزيله إلى /data/uicc/cardlets/.
  6. إذا كان جهازك يعرض أكثر من عنصر آمن واحد، ثبِّت تطبيق العيّنة الصغير في العنصر الآمن المضمّن (eSE) الخاص بالجهاز الخاضع للاختبار أو في شريحة SIM التي يستخدمها الجهاز الخاضع للاختبار. لمزيد من المعلومات، يُرجى الاطّلاع على اختبارات CTS لعنصر Secure Element.

  7. إذا لم يكن جهازك مزوّدًا بشاشة مدمجة، وصِّل شاشة بالجهاز.

  8. إذا كان الجهاز يحتوي على فتحة لبطاقة الذاكرة، أدخِل بطاقة SD فارغة. استخدِم بطاقة SD متوافقة مع ناقل بيانات فائق السرعة (UHS) بسعة SDHC أو SDXC أو بطاقة من فئة السرعة 10 أو أعلى لضمان اجتيازها اختبار التوافق مع نظام التشغيل Android.

  9. إذا كان الجهاز يتضمّن فتحات لشرائح SIM، أدخِل شريحة SIM مفعَّلة في كل فتحة. إذا كان الجهاز يتيح استخدام الرسائل القصيرة، يجب ملء حقل الرقم لكل شريحة SIM. بالنسبة إلى الأجهزة التي تعمل بالإصدار 12 من نظام التشغيل Android أو الإصدارات الأحدث، يجب أن تتوافق جميع شرائح SIM مع ميزة تخزين أرقام الاتصال المختصر (ADN). تستوفي بطاقات GSM وUSIM التي تتضمّن ملف الاتصالات المخصّص (DFTelecom) هذا الشرط.

  10. تأكَّد من أنّ جهازك يحتوي على شريحة SIM مزوّدة بامتيازات CTS الخاصة بمشغّل شبكة الجوّال التي تستوفي المتطلبات المحدّدة في إعداد شريحة UICC.

إعداد الجهاز الخاضع للاختبار

اتّبِع الخطوات التالية لإعداد جهازك قيد الاختبار لاستخدامه مع مجموعة اختبارات التوافق (CTS).

على الجهاز قيد الاختبار (DUT):

  1. أعِد ضبط الجهاز على الإعدادات الأصلية.

  2. ضبط لغة الجهاز على الإنجليزية (الولايات المتحدة)

  3. إذا كان الجهاز يتيح تخصيص الخطوط التلقائية، تأكَّد من ضبط مجموعة الخطوط التلقائية sans-serif على Roboto.

  4. إذا كان الجهاز يتضمّن نظام تحديد المواقع العالمي (GPS) أو شبكة Wi-Fi أو شبكة جوّال، فعِّل إعدادات الموقع الجغرافي.

  5. اتّصِل بشبكة Wi-Fi متوافقة مع IPv6 ويمكنها التعامل مع الجهاز الخاضع للاختبار كعميل معزول، ويجب أن تتوفّر فيها إمكانية الاتصال بالإنترنت. للحصول على شرح حول العملاء المعزولين، يُرجى الاطّلاع على إعداد بيئة فعلية.

  6. تأكَّد من عدم ضبط نقش قفل أو كلمة مرور.

  7. فعِّل ميزة "تصحيح أخطاء الجهاز عبر USB" باتّباع الخطوات التالية:

    1. انتقِل إلى الإعدادات > لمحة عن الهاتف وانقر على رقم الإصدار سبع مرات. يظهر خيارات المطوّرين ضمن فئة إعدادات النظام.

    2. انقر على تصحيح أخطاء الجهاز عبر USB.

    لتفعيل تصحيح أخطاء USB على الإصدار 10 من نظام التشغيل Android أو الإصدارات الأقدم، يُرجى الاطّلاع على إعداد مجموعة اختبار التوافق (الإصدار 10 من نظام التشغيل Android أو الإصدارات الأقدم).

  8. اضبط الوقت على تنسيق 12 ساعة.

  9. فعِّل خيارات المطوّرين > عدم إطفاء الشاشة.

  10. إيقاف ميزة التحقّق من التطبيقات عبر USB:

    1. انتقِل إلى خيارات المطوّرين.

    2. انقر على التحقّق من التطبيقات عبر USB.

  11. في الإصدار 13 من نظام التشغيل Android أو الإصدارات الأحدث، فعِّل خيار "محاكي المودم" باتّباع الخطوات التالية:

    1. انتقِل إلى خيارات المطوّرين.

    2. انقر على السماح بخدمة مودم وهمي.

    هذا الإعداد مطلوب لإجراء اختبارات محدّدة على خدمات الاتصال الهاتفي.

على جهاز الكمبيوتر المكتبي:

  1. افتح المتصفّح وأغلِق أي شاشة بدء أو إعداد.

  2. وصِّل الجهاز قيد الاختبار بجهاز الكمبيوتر المكتبي باستخدام كابل USB.

  3. إذا طلب منك النظام قبول مفتاح RSA الذي يسمح بتصحيح الأخطاء من خلال هذا الكمبيوتر، انقر على السماح بتصحيح أخطاء USB.

  4. اضبط Roboto2 كخط sans-serif باستخدام إعداد يسهل على المستخدم الوصول إليه (غير مخفي).

  5. انسخ ملفات وسائط CTS إلى الجهاز الخاضع للاختبار (DUT):

    1. انتقِل (cd) إلى المسار الذي يتم فيه تنزيل ملفات الوسائط وفك ضغطها.
    2. غيِّر أذونات الملف باتّباع الخطوات التالية:

      chmod u+x copy_media.sh
      
    3. انسخ الملفات باتّباع الخطوات التالية:

      • لنسخ مقاطع بدقة تصل إلى 720x480، نفِّذ الأمر التالي:

        ./copy_media.sh 720x480
      • إذا لم تكن متأكدًا من الحد الأقصى للدقة، انسخ جميع الملفات:

        ./copy_media.sh all
      • إذا كانت هناك أجهزة متعدّدة قيد الاختبار، أضِف خيار الرقم التسلسلي (-s) لجهاز معيّن في النهاية. على سبيل المثال، لنسخ ما يصل إلى 720x480 إلى الجهاز الذي يحمل الرقم التسلسلي 1234567، شغِّل ما يلي:

        ./copy_media.sh 720x480 -s 1234567

تنزيل ملفات CTS ذات الصلة بـ Mainline

لتنزيل ملفات CTS ذات الصلة بمشروع Mainline، اتّبِع الخطوات التالية:

  1. يمكنك الحصول على مستوى واجهة برمجة التطبيقات Android على الجهاز من خلال تنفيذ ما يلي:

    adb shell getprop ro.build.version.sdk
    
  2. اتّبِع التعليمات الواردة في نص download_mcts.sh لتنزيل ملفات CTS في Mainline.

    تستغرق عملية التنزيل 10 دقائق على الأقل، وذلك حسب سرعة الشبكة.

حِزم Shim

يسرد الجدول التالي الحِزم المتاحة لكل إصدار من الجهاز وبنيته:

إصدار الجهاز الحِزم (في حال توفّر APEX) الحِزم (في حال عدم توفّر APEX)
تفعيل جهاز الإنذار x86 تفعيل جهاز الإنذار x86
Android 16 16-arm-release android16-x86-release android16-arm-CtsShim.apk

android16-arm-CtsShimPriv.apk

android16-x86-CtsShim.apk

android16-x86-CtsShimPriv.apk

Android 15 15-arm-release android15-x86-release android15-arm-CtsShim.apk

android15-arm-CtsShimPriv.apk

android15-x86-CtsShim.apk

android15-x86-CtsShimPriv.apk

Android 14 android14-arm-release android14-x86-release android14-arm-CtsShim.apk

android14-arm-CtsShimPriv.apk

android14-x86-CtsShim.apk

android14-x86-CtsShimPriv.apk

Android 13 android13-arm-release android13-x86-release android13-arm-CtsShim.apk

android13-arm-CtsShimPriv.apk

android13-x86-CtsShim.apk

android13-x86-CtsShimPriv.apk

Android 12 android12-arm-release android12-x86-release android12-arm-CtsShim.apk

android12-arm-CtsShimPriv.apk

android12-x86-CtsShim.apk

android12-x86-CtsShimPriv.apk

Android 11 android11-arm-release android11-x86-release android11-arm-CtsShim.apk

android11-arm-CtsShimPriv.apk

android11-x86-CtsShim.apk

android11-x86-CtsShimPriv.apk

Android 10 android10-release android10-arm-CtsShim.apk

android10-arm-CtsShimPriv.apk

android10-x86-CtsShim.apk

android10-x86-CtsShimPriv.apk

الإصدارات 9 وO وO-MR1 من نظام التشغيل Android لا ينطبق لا ينطبق arm-CtsShim.apk

arm-CtsShimPriv.apk

x86-CtsShim.apk

x86-CtsShimPriv.apk

ما هي الخطوات التالية؟

بعد قراءة هذا المستند، انتقِل إلى تشغيل اختبارات CTS المبرمَجة.