إجراء اختبارات CTS

Trade Federation هو إطار عمل اختبار مستمر لإجراء الاختبارات على أجهزة Android. لإجراء مجموعة أدوات اختبار التوافق (CTS)، يُرجى أولاً قراءة نظرة عامة على اتحاد التجارة للحصول على شرح لإطار عمل اختبار Tradefed.

لتنفيذ خطة اختبار، اتّبِع الخطوات التالية:

  1. إعداد الأجهزة التي يتم اختبارها (DUT) وفقًا لخطوات إعداد جهاز Android
  2. تأكَّد من تثبيت أحدث إصدارَين من كلّ من Android Debug Bridge (adb) و Android Asset Packaging Tool (AAPT) وإضافة موقع هذين الأداتَين إلى مسار النظام على جهازك. للحصول على معلومات حول تثبيت هذه الأدوات، يُرجى الاطّلاع على إعداد CTS: أداتا ADB وAAPT.
  3. نزِّل إصدارات CTS التي تم طرحها على جهاز Linux المضيف وفك ضغط الإصدار في الموقع المضيف.
  4. عليك توصيل جهاز واحد على الأقل. لإعداد جهاز DUT:
    • اضغط على زر home (الصفحة الرئيسية) لضبط الجهاز على الشاشة الرئيسية.
    • لا تستخدِم DUT لأي مهام أخرى.
    • يجب إبقاء الجهاز النموذجي في وضع ثابت لتجنُّب بدء قياس أنشطة المستشعر.
    • وجِّه كاميرا الجهاز إلى كائن يمكن التركيز عليه.
    • لا تضغط على أي مفاتيح على الجهاز أثناء تشغيل CTS. يؤدي الضغط على مفاتيح أو لمس شاشة جهاز DUT إلى التأثير في الاختبارات الجارية وقد يؤدي ذلك إلى تعذُّر إكمال الاختبارات.
  5. اطلق نص وحدة تحكّم CTS cts-tradefed من المجلد الذي تم فك ضغط حزمة CTS فيه. في بيئة سطر أوامر المضيف، نفِّذ ما يلي:

    ./android-cts/tools/cts-tradefed
  6. شغِّل خطة الاختبار التلقائية (التي تحتوي على جميع حِزم الاختبار):

    • بالنسبة إلى الإصدار 11 من CTS والإصدارات الأقدم
      cts-tradefed > run cts
    • بالنسبة إلى الإصدار 12 من CTS والإصدارات الأحدث

      cts-console > run cts

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

      • بالنسبة إلى الإصدار 9 من نظام التشغيل Android والإصدارات الأحدث، استخدِم خيار الأمر.

        --shard-count number_of_shards
      • على نظام Android 8.1 والإصدارات الأقدم، استخدِم خيار الأمر.

        --shards number_of_shards
    • إذا كنت لا تريد تشغيل مجموعة الاختبار بأكملها، يمكنك تنفيذ خطة CTS التي تختارها من سطر الأوامر:

      run cts --plan test_plan_name

      للعثور على اسم خطة الاختبار:

      • في الإصدار 7.0 من نظام التشغيل Android والإصدارات الأحدث، للاطّلاع على قائمة بوحدات الاختبار، أدخِل

        list modules
      • في نظام التشغيل Android 6.0 والإصدارات الأقدم، لعرض قائمة بخطط الاختبار في المستودع، أدخِل

        list plans
      • بالنسبة إلى الإصدار 6.0 من Android والإصدارات الأقدم، لعرض قائمة بحِزم الاختبار في المستودع، أدخِل

        list packages
    • للحصول على خيارات أوامر إضافية استنادًا إلى إصدارات CTS، يُرجى الرجوع إلى مرجع أوامر وحدة التحكّم، أو ضمن "المساعدة الكلّية" في وحدة تحكّم Tradefed.

  7. يمكنك إجراء جلسات إعادة محاولة متعددة إلى أن تكتمل جميع وحدات الاختبار ويكون عدد حالات تعذُّر الاختبار متطابقًا في آخر جلستَي إعادة محاولة.

    • بالنسبة إلى الإصدار 9 من نظام التشغيل Android والإصدارات الأحدث، استخدِم

      run retry --retry session_number --shard-count number_of_shards
    • بالنسبة إلى الإصدارات من Android 7.0 إلى 8.1، استخدِم

      run cts --retry session_number --shards number_of_shards
    • للحصول على خيارات إضافية لأمر Retry استنادًا إلى إصدار CTS، يُرجى الاطّلاع على وحدة تحكّم الأوامر في الإصدار 2 من CTS.

    • لفهم تفاصيل تنفيذ إعادة محاولة CTS، يُرجى الاطّلاع على إعادة محاولة Trade Federation Suite.

  8. يمكنك إجراء جلسة إعادة محاولة على الاختبارات المُستخدِمة للمَعلمات التي تعذّر إكمالها فقط. لا تتم إعادة محاولة الاختبارات التي تم اجتيازها والمُستخدِمة للمَعلمات.

    • في الإصدار 11 من نظام التشغيل Android والإصدارات الأحدث، يتم تفعيل خيار الأمر التالي لإعادة المحاولة تلقائيًا في الأمر run cts:

      run retry --retry  --new-parameterized-handling
  9. يمكنك الاطّلاع على مستوى تقدّم الاختبار والنتائج التي تم الإبلاغ عنها في وحدة التحكّم.

تشغيل مجموعة أدوات اختبار التوافق (CTS) باستخدام "محطة اختبار Android"

‫Android Test Station هي أداة لتشغيل الاختبار الآلي يمكن لمطوّري تطبيقات Android ومهندسي الاختبار استخدامها لتوظيف واجهة مستخدم لتشغيل مجموعات اختبار قياسية. وهو متوافق مع مجموعة أدوات اختبار التوافق (CTS) في Android.

تتوفّر الأداة للجميع من خلال قراءة دليل مستخدم ATS، ورمزها مفتوح المصدر في AOSP (multitest_transport، tradefed_cluster).

تشغيل CTS للأوضاع البديلة

يضيف إصدار CTS 10 R4 خطة اختبار للأجهزة التي تتضمّن أوضاعًا بديلة أو للأجهزة التي تتضمّن أكثر من شاشة واحدة. نفِّذ خطة اختبار الأوضاع البديلة باستخدام run cts-foldable.

تتم إضافة القيمة من display_mode إلى حالات الاختبار التي نجحت أو تعذّر إكمالها لميزة "وضع الشاشة البديل"، على سبيل المثال testcase1[display_mode=0].

في الإصدار 13 من مجموعة أدوات اختبار التوافق (CTS)، تسمح واجهة برمجة التطبيقات DeviceStateManager API بتشغيل وحدات الاختبار التي تتضمّن خيار الإعداد التالي في حالات الجهاز المختلفة للجهاز القابل للطي. يتم تنفيذ الاختبار تلقائيًا في CTS استنادًا إلى حالات طي الشاشة المحدّدة في الجهاز بدون الحاجة إلى تنفيذ خطة اختبار cts-foldable.

<option name="config-descriptor:metadata" key="parameter" value="all_foldable_states" />

اختبار الأجهزة المتعددة في مجموعة اختبار التوافق (CTS)

يتيح نظام التشغيل Android 13 والإصدارات الأحدث اختبار الأجهزة المتعددة. يتم تنفيذ الاختبارات التي تتطلّب استخدام أجهزة متعددة تلقائيًا أثناء تشغيل CTS. يتضمّن CTS 13 بعض اختبارات الأجهزة المتعددة التي يتم تشغيلها تلقائيًا عند استخدام ميزة تجزئة البيانات. على الرغم من أنّ الاختبار لا يتطلّب إجراء تغييرات إضافية على الإعداد المادي، يجب تثبيتvirtualenv لتشغيل الاختبارات بشكل صحيح. لمعرفة التفاصيل، يُرجى قراءة مقالة مجموعات التطبيقات المتوافقة مع الأجهزة المتعددة.

إجراء اختبارات على أجهزة متعددة

لإجراء اختبار على أجهزة متعددة بشكل مستقل، استخدِم الرمز البرمجي التالي:

  cts-tradefed > run cts-multidevice
  

تتوفّر جميع الخيارات العادية. لاستهداف أجهزة معيّنة، أضِف --serial <serial1> --serial <serial2> وهكذا دواليك بعدد الأجهزة المستهدفة.

لبدء اختبارات على أجهزة متعددة تلقائيًا، استخدِم تقسيم البيانات، كما هو موضّح في --shard-count 2.