Android Test Station هي أداة اختبار يمكن لمطوري Android ومهندسي الاختبار استخدامها لتوظيف واجهة مستخدم لتشغيل مجموعات اختبار Android القياسية، مثل مجموعة اختبار توافق Android (CTS) . تعمل هذه الأداة كواجهة ويب للاتحاد التجاري (TF) ، مما يتيح لك تشغيل CTS بسهولة على مجموعة من أجهزة الاختبار بأقل قدر من الإعداد، بالإضافة إلى وضع جدول زمني لإجراء الاختبارات بشكل مستمر.
قم بإعداد محطة اختبار Android
يشرح هذا القسم كيفية تثبيت وإعداد محطة اختبار Android.
تستخدم محطة اختبار Android الكود المصدري من هذه المواقع:
- كود مصدر محطة اختبار أندرويد
- كود مصدر الكتلة TradeFed
تثبيت محطة اختبار أندرويد
اتبع أي متطلبات للأجهزة والبرامج الخاصة بمجموعات الاختبارات التي تقوم بتشغيلها.
تم العثور على متطلبات CTS على source.android.com .
لا توجد متطلبات أجهزة إضافية لـ ATS، لكننا نوصي باستخدام متطلبات مضيف CTS كنقطة بداية.
هناك طريقتان لتثبيت محطة اختبار Android:
- قم بتشغيل برنامج التثبيت .
- قم بتثبيته يدويًا ، الأمر الذي يتطلب تثبيت برامج وموارد متعددة.
التثبيت مع برنامج التثبيت
في نظام التشغيل Ubuntu 20.04+، يقوم برنامج التثبيت بتثبيت وتكوين جميع البرامج والموارد اللازمة لتشغيل Android Test Station.
لاستخدام برنامج التثبيت:
قم بتشغيل برنامج التثبيت:
curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
قم بتشغيل
mtt version
للتحقق من الإصدار المثبت من Android Test Station CLI.
التثبيت يدويًا
قم بتثبيت عامل الميناء
اتبع الإرشادات الخاصة بتثبيت Docker Community Edition (CE) على جهاز Linux الخاص بك.
قد تحتاج إلى إعادة تشغيل نافذتك الطرفية أو تسجيل الخروج وتسجيل الدخول مرة أخرى حتى تدخل تغييرات الأذونات حيز التنفيذ.
تثبيت بايثون 3
تم التحقق من Android Test Station CLI مقابل إصدارات Python من 3.7 إلى 3.10.
بالنسبة إلى Ubuntu 16.04 أو الإصدارات الأقدم، قم أولاً بإضافة مستودع Python 3 عن طريق القيام بأحد الإجراءات التالية:
قم بتشغيل هذا الأمر:
sudo add-apt-repository ppa:deadsnakes/ppa
بناء وتثبيت المستودع من المصدر .
لتثبيت Python 3، قم بتشغيل هذه الأوامر:
sudo apt-get update
sudo apt install python3 python3-distutils
لتثبيت إصدار محدد من Python 3 (على سبيل المثال، 3.10)، قم بتشغيل هذه الأوامر بدلاً من ذلك:
sudo apt-get update
sudo apt install python3.10 python3.10-distutils
احصل على محطة اختبار Android CLI
قم بتنزيل حزمة واجهة سطر الأوامر (CLI) هنا.
ابدأ تشغيل محطة اختبار Android
ابدأ تشغيل Android Test Station بالأمر التالي:
mtt start
في المرة الأولى التي يتم فيها تشغيل واجهة المستخدم، قد يستغرق ظهورها بضع دقائق. تعرض واجهة سطر الأوامر (CLI) عنوان URL للويب للوصول إلى واجهة المستخدم في المتصفح. بشكل افتراضي، عنوان URL للويب هو localhost:8000
. إذا لزم الأمر، يمكنك تغيير المنفذ الافتراضي عند بدء التشغيل باستخدام علامة --port
.
في حالة توفر إصدار أحدث، يمكنك التحديث إلى الإصدار الحالي. يمكنك التحقق من ملاحظات الإصدار للحصول على أحدث الإصدارات.
للتحديث إلى الإصدار الحالي، قم بتشغيل:
mtt start --force_update
لإيقاف التطبيق، قم بتشغيل:
mtt stop
لعرض قائمة بالأوامر الأخرى، استخدم:
mtt --help
النسخ الاحتياطي واستعادة قاعدة البيانات
لعمل نسخة احتياطية من قاعدة بيانات ATS، أوقف التطبيق وقم بتشغيل الأمر التالي، الذي يقوم بعمل نسخة احتياطية لقاعدة البيانات الحالية في ملف TAR يسمى mtt-backup.tar
في الدليل الرئيسي لديك:
docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar cvf /out/mtt-backup.tar ."
للاستعادة، قم بتشغيل الأمر التالي قبل بدء التطبيق:
docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar xvf /out/mtt-backup.tar"
معالج الاعداد
بعد تثبيت Android Test Station وتشغيله للمرة الأولى، يأخذك معالج الإعداد خلال بضع خطوات لمساعدتك على تخصيص الأداة بما يتناسب مع بيئتك. يمكن إعادة تكوين أي تغييرات تجريها هنا لاحقًا من خلال صفحة الإعدادات.
استعادة نسخة احتياطية للتكوين
إذا كان لديك ملف تكوين تم نسخه احتياطيًا من مضيف Android Test Station آخر، فيمكنك تحميل الملف لنسخ أي تكوينات تم تعديلها من ذلك المضيف عن طريق النقر فوق الزر "تحميل ملف" .
الشكل 1. استعادة نسخة احتياطية للتكوين.
قم بتعيين حساب الخدمة الافتراضي
يمكنك تعيين حساب خدمة تستخدمه Android Test Station افتراضيًا عند الوصول إلى مواردك (على سبيل المثال، Google Cloud Storage، وGoogle Drive). لمصادقة حساب الخدمة الخاص بك، انقر فوق تحميل مفتاح حساب الخدمة وحدد ملف مفتاح JSON الخاص بحساب الخدمة الخاص بك.
الشكل 2. إعداد حساب الخدمة.
عند مصادقة حساب الخدمة بنجاح، يظهر عنوان البريد الإلكتروني للحساب في الزاوية اليمنى العليا من الصفحة. لتغيير حساب الخدمة، انقر فوق اسم الحساب، وقم بإزالة الحساب الافتراضي الحالي، وقم بتحميل مفتاح حساب خدمة جديد.
الشكل 3. تغيير حساب الخدمة.
استيراد مجموعات التكوين
مجموعة التكوين عبارة عن حزمة من التكوينات لتشغيل مجموعات الاختبار، بما في ذلك إجراءات الجهاز ذات الصلة وإنشاء القنوات. تتم استضافة مجموعات التكوين في مجموعة Google Cloud Storage (GCS) محددة. بعد مصادقة قناة بناء GCS باستخدام حساب Google الخاص بك، سترى قائمة بجميع مجموعات التكوين المتاحة لك.
حدد أي مجموعات تكوين ترغب في إضافتها إلى مضيف محطة الاختبار الخاصة بك وانقر فوق "استيراد المحدد" .
الشكل 4. استيراد مجموعة التكوين.
تضمين إعدادات Wi-Fi
تتطلب بعض اختبارات CTS أن يتصل جهازك بنقطة اتصال Wi-Fi. لتحديد شبكة Wi-Fi الخاصة بك، أدخل WiFi SSID و WiFi PSK الاختياري.
الشكل 5. إعدادات نقطة اتصال Wi-Fi.
بعد إكمال معالج الإعداد، تتم إعادة تحميل الصفحة مع تطبيق الإعدادات الجديدة.
قم بتوصيل جهاز
يجب تمكين تصحيح أخطاء USB لاستخدام جهاز للاختبار. لتمكين تصحيح الأخطاء:
اتبع الإرشادات الموجودة في تمكين خيارات المطور وتصحيح الأخطاء .
إذا كنت تخطط لاستخدام إصدارات Android التجريبية المحملة مسبقًا بمفاتيح ADB مخصصة، فضع ملفات
.adb_key
المخصصة ضمن الدليل~/.android/
.يتم تحميل الملفات تلقائيًا وتمريرها إلى ADB لتمكين تصحيح أخطاء USB تلقائيًا بعد وميض الجهاز للأجهزة التي تقوم بتشغيل تلك الإصدارات.
قم بتوصيل الجهاز بالجهاز المضيف باستخدام USB.
يظهر الجهاز في علامة التبويب أجهزة Android Test Station خلال دقيقة واحدة بعد تحديث واجهة الويب. يمكنك أيضًا عرض حالة الأجهزة في علامة التبويب هذه.
الشكل 6. توصيل الجهاز.
حالات الجهاز المختلفة هي:
- متوفر - الجهاز متصل وجاهز لإجراء الاختبار.
- مخصص - الجهاز متصل ويقوم حاليًا بإجراء اختبار. يمكن لكل جهاز إجراء اختبار واحد فقط في كل مرة، لذلك يجب على الجهاز إنهاء اختباره الحالي قبل تشغيل اختبار جديد.
قم بإجراء اختبار
اختر اختبارًا
تأتي محطة اختبار Android مع مجموعة من تكوينات CTS المجمعة مسبقًا. لتشغيل أحد هذه الاختبارات، انتقل إلى علامة التبويب Test Suites وانقر فوق Run test للاختبار المطلوب.
الشكل 7. اختيار الاختبار.
لتحرير اختبارات جديدة أو إضافتها، راجع إضافة اختبارات .
تكوين تشغيل الاختبار
قم بتحرير المعلمات لاستخدامها في هذا التشغيل الاختباري المحدد. تتم تعبئة معظم المعلمات مسبقًا بالقيم المحددة في تكوين الاختبار المحدد.
يمكن إكمال هذه الخطوة باستخدام القيم الافتراضية، ولكن يمكنك تغيير أي من المعلمات، مثل Max Retry و Command ، لتناسب احتياجاتك.
الشكل 8. تكوين التشغيل التجريبي.
معلمات التشغيل التجريبي هي:
- الاسم - اسم مجموعة الاختبار التي ترغب في تشغيلها.
- عدد مرات التشغيل - عدد المرات التي يجب فيها تنفيذ التشغيل الاختباري هذا عند جدولته. تتم جدولة عمليات التشغيل الاختبارية باستخدام الاتحاد التجاري ، الذي يجري ما يصل إلى 20 عملية تشغيل اختبارية بالتوازي إذا كانت هناك إمكانية للقيام بذلك.
- الحد الأقصى لإعادة المحاولة - الحد الأقصى لعدد مرات إعادة محاولة تشغيل الاختبار في حالة فشل اختبار واحد على الأقل. يتم ضبط هذا عادةً على 4-6 مرات إعادة المحاولة لتشغيل CTS الكامل للتعامل مع الاختبارات غير المستقرة.
- مهلة قائمة الانتظار - إذا ظل التشغيل الاختباري في حالة قائمة الانتظار لفترة طويلة جدًا، فسيتم إلغاؤه تلقائيًا. حدد مقدار الوقت الذي يجب انتظاره قبل الإلغاء هنا. الافتراضي هو 24 ساعة.
الأمر - الأمر لتشغيل مجموعة الاختبار. يمكنك إدخال وسائط سطر أوامر إضافية هنا. على سبيل المثال، قم بتشغيل وحدة نمطية محددة في CTS 8.1 باستخدام:
cts-suite -m ShortModuleName
أمر إعادة المحاولة - أمر إعادة محاولة مجموعة الاختبار. يمكنك إضافة وسائط سطر أوامر إضافية هنا. على سبيل المثال، لإعادة محاولة وحدة معينة فقط في CTS 8.1، استخدم:
cts --retry 0 -m ShortModuleName
قد تختلف وسيطات إعادة المحاولة عن تلك المتاحة مع الأمر الأولي، لذا تحقق من المعلمات المدعومة على الموقع الرسمي لمجموعة الاختبار المحددة.
التشغيل التجريبي السابق - إذا كنت ترغب في إعادة تشغيل التشغيل التجريبي السابق:
محلي - إذا تم بدء التشغيل على المضيف الحالي، فأدخل معرف تشغيل الاختبار الذي يظهر عند عرض تفاصيل تشغيل الاختبار.
الشكل 9. تشغيل الاختبار المحلي السابق.
عن بعد - إذا تم بدء التشغيل على مضيف مختلف، فقم بتحميل ملف نتائج الاختبار عن طريق تحديد Remote ، والنقر فوق تحميل ملف نتائج الاختبار ، وتحديد ملف من وحدة التخزين المحلية لديك.
الشكل 10. تشغيل الاختبار السابق عن بعد.
حدد الأجهزة
انقر فوق مربعات الاختيار لتحديد الأجهزة التي سيتم تخصيصها لتشغيل مجموعة الاختبار. يجب أن يتغير عدد الأجزاء تلقائيًا ليتوافق مع عدد الأجهزة المحددة.
الشكل 11. اختيار الأجهزة.
لتحديد الأجهزة حسب سمات أخرى غير الأرقام التسلسلية للجهاز، يمكنك إدخال "مواصفات الجهاز" يدويًا. على سبيل المثال، لتحديد 3 أجهزة يكون اسم منتجها "bramble"، أدخل ما يلي:
product:bramble;product:bramble;product:bramble
السمات المدعومة هي:
- build_id
- Device_serial
- نوع الجهاز
- اسم المضيف
- منتج
- Product_variant
- sim_state
يجب أن تكون جميع الأجهزة المحددة في الحالة المتوفرة لتنفيذ التشغيل الاختباري، وتتحول جميعها إلى الحالة المخصصة عند تنفيذ التشغيل الاختباري. يكون التشغيل التجريبي في حالة قائمة الانتظار أثناء انتظار توفر الأجهزة.
إضافة إجراءات الجهاز
إجراءات الجهاز هي نصوص برمجية يمكن تنفيذها قبل كل تشغيل اختباري. يتم تكوين بعض إجراءات الجهاز بالفعل، مثل الوميض وإعادة التشغيل. لإنشاء إجراءات جهاز جديدة، راجع إنشاء إجراء جهاز جديد .
الشكل 12. إجراءات الجهاز.
لإضافة إجراء جهاز إلى تشغيل اختباري، انقر فوق إضافة إجراء جديد ، وحدد خانات الاختيار الخاصة بالإجراءات المراد إضافتها، ثم انقر فوق إضافة إجراء (إجراءات) . يتم تنفيذ إجراءات الجهاز بالتتابع. يمكنك إعادة ترتيب الإجراءات عن طريق سحبها.
الشكل 13. إعادة ترتيب الإجراءات.
تعيين موارد الاختبار
موارد الاختبار هي الملفات المطلوبة لتنفيذ تشغيل اختباري. على سبيل المثال، يتطلب تشغيل CTS ملف android-cts*.zip
، ويتطلب وميض الجهاز توفير صورة البناء.
يجب أن يكون عنوان URL لتنزيل الملف المضغوط لمجموعة الاختبار افتراضيًا على روابط Google Drive المقدمة للشركاء. يمكنك تحديد ملف مختلف بالنقر فوق "تصفح" . في النافذة المنبثقة، يمكنك إدخال رابط تنزيل ملف، أو استخدام ملف من قناة إنشاء معتمدة، أو تحميل ملف لاستخدامه من وحدة التخزين المحلية.
الشكل 14. اختبار الموارد.
يوجد أدناه نافذة منبثقة لاختيار مورد اختبار عن طريق عنوان URL للويب. يمكنك ببساطة إدخال رابط التنزيل، والنقر فوق الزر "تحديد" لتأكيد الاختيار.
الشكل 15. اختبار محدد الموارد - عنوان URL للويب.
إذا قمت بتحميل الموارد إلى Google Grive أو Google Cloud Storage (GCS) أو قنوات أخرى، فيمكنك أيضًا الانتقال إلى علامة تبويب القناة المحددة وتحديد الموارد هناك. فيما يلي مثال لاختيار مورد من محرك جوجل.
الشكل 16. اختبار محدد الموارد - Google Drive.
بالإضافة إلى تحديد الملفات فقط، يتم أيضًا دعم أحرف البدل في حقل اسم الملف . يمكن العثور على الوثائق هنا .
الشكل 17. اختبار محدد الموارد - دعم نمط أحرف البدل.
يمكنك أيضًا تحديد ملف من مساحة تخزين الملفات المحلية في Android Test Station. يمكنك تحميل الملفات إلى وحدة التخزين هذه، أو استخدام الملفات والأدلة المحلية مباشرة .
الشكل 18. اختبار محدد الموارد - مخزن الملفات المحلي.
إضافة تكوينات إعادة التشغيل
يمكنك جدولة عمليات إعادة التشغيل التي تبدأ بعد اكتمال التشغيل الأساسي وتحميل نتائجها، ولكن يمكنك استخدام أجهزة أو إجراءات أو موارد مختلفة.
الشكل 19. إضافة إعدادات إعادة التشغيل.
ابدأ تشغيلًا تجريبيًا
بعد إدخال المعلومات المطلوبة للتشغيل التجريبي، انقر فوق بدء تشغيل الاختبار . إذا كانت جميع المعلومات صالحة، فسيبدأ التشغيل التجريبي، وستتم إعادة توجيهك إلى صفحة لعرض التفاصيل وتقدم التشغيل التجريبي.
الشكل 20. بدء التشغيل التجريبي.
إنشاء خطة اختبار
تُستخدم خطط الاختبار لإنشاء عمليات تشغيل اختبارية وفقًا لجدول دوري. على سبيل المثال، تشغيل CTS 9.0 كل يوم في الساعة 5 مساءً. لإنشاء خطة اختبار جديدة، انقر فوق إنشاء خطة اختبار جديدة .
الشكل 21. إنشاء خطة اختبار.
تكوين خطة الاختبار
أدخل اسم خطة الاختبار وأي تسميات تريد إضافتها. ثم حدد جدولًا لاستخدامه.
- يدوي - تقوم خطة الاختبار بإنشاء عمليات تشغيل اختبار فقط عندما يقوم المستخدم بالنقر فوق تشغيل خطة الاختبار في صفحة قائمة خطة الاختبار.
- دوري - تقوم خطة الاختبار تلقائيًا بجدولة عمليات الاختبار وفقًا للجدول الدوري المحدد. على سبيل المثال، جدولة اختبار التشغيل كل يوم في الساعة 5:00 مساءً.
- مخصص - تقوم خطة الاختبار تلقائيًا بجدولة عمليات تشغيل الاختبار بناءً على تعبير cron الذي تم إدخاله. على سبيل المثال، لجدولة تشغيل اختباري كل يوم في الساعة 5:00 مساءً، يكون تعبير cron هو
0 17 * * *
.
الشكل 22. تكوين خطة الاختبار.
إضافة أجنحة الاختبار
قم بإضافة مجموعات الاختبارات التي تريد جدولتها بواسطة خطة الاختبار عن طريق النقر فوق + إضافة تكوين تشغيل اختباري . حدد مجموعة اختبار من القائمة المنسدلة "الاسم" وانقر فوق "الخطوة التالية" . ثم حدد الأجهزة التي ترغب في إجراء الاختبار عليها وانقر فوق "إضافة تكوين" . يمكنك إضافة تكوينات متعددة لكل خطة اختبار.
الشكل 23. تكوين التشغيل التجريبي.
إضافة إجراءات الجهاز
أضف إجراءات الجهاز التي تريد تنفيذها قبل كل تشغيل اختباري. راجع إضافة إجراءات الجهاز لمزيد من التفاصيل.
الشكل 24. إضافة إجراءات الجهاز.
تعيين موارد الاختبار
إن إضافة موارد الاختبار إلى خطط الاختبار هو نفس إضافتها إلى عمليات تشغيل الاختبار الفردية. راجع إعداد موارد الاختبار لمزيد من التفاصيل.
الشكل 25. تحديد موارد الاختبار.
عرض عمليات الاختبار
قائمة تشغيل الاختبار
قم بعرض قائمة عمليات تشغيل الاختبار المجدولة في صفحة عمليات تشغيل الاختبار. انقر فوق عرض لرؤية المزيد من التفاصيل حول التشغيل التجريبي.
يمكنك أيضًا تصفية القائمة عن طريق إدخال سلسلة في شريط التصفية والضغط على مفتاح Enter . يمكنك استخدام مرشحات متعددة عن طريق فصلها بفاصلة. يقوم عامل التصفية بإرجاع جميع الصفوف التي تحتوي على النص الدقيق (لا توجد سلسلة فرعية متطابقة) في أي عمود، باستثناء الحالة والإنشاء .
يقوم عامل التصفية الفارغ بإرجاع كافة الصفوف. لا توجد حاليًا طريقة لتصفية الصفوف ذات القيم الفارغة.
الشكل 26. قائمة تشغيل الاختبار.
تفاصيل التشغيل التجريبي
يمكنك عرض تفاصيل تشغيل الاختبار هنا، مثل الحالة والسجلات والنتائج.
الشكل 27. تفاصيل التشغيل التجريبي.
حالة تشغيل الاختبار
يتم عرض التقدم المحرز في التشغيل التجريبي في قسم الحالة. إذا كانت هناك رسالة ذات صلة، مثل تقدم التنزيل أو سبب الإلغاء أو رسالة خطأ، فسيتم عرضها هنا أيضًا.
الشكل 28. حالة تشغيل الاختبار.
حالات التشغيل التجريبي هي:
- معلق - جارٍ تنزيل الموارد المطلوبة.
- في قائمة الانتظار - الاختبار جاهز للتشغيل عندما يصبح الجهاز متاحًا.
- قيد التشغيل - يتم تشغيل الاختبار على جهاز مخصص.
- مكتمل - اكتمل الاختبار وتم الإبلاغ عن نتائجه.
- تم الإلغاء - تم إلغاء الاختبار من قبل المستخدم أو انتهت مهلته أثناء محاولة العثور على الأجهزة المتاحة.
- خطأ - حدث خطأ أدى إلى منع تشغيل الاختبار.
إلغاء التشغيل التجريبي
إذا لم يكتمل التشغيل التجريبي، فيمكنك إلغاؤه بالنقر فوق "إلغاء الأمر" ثم النقر فوق " نعم" في مربع حوار التأكيد. يتم أيضًا إلغاء عمليات التشغيل الاختبارية تلقائيًا إذا ظلت في حالة "قائمة الانتظار " لفترة أطول من حقل queue_timeout_thans . قد يستغرق إلغاء التشغيل التجريبي أثناء وجوده في حالة التشغيل بضع دقائق حتى يصبح ساري المفعول.
الشكل 29. إلغاء التشغيل التجريبي.
نتائج التشغيل التجريبي
بعد انتهاء التشغيل التجريبي، يتم جمع النتائج وعرضها. يمكنك عرض تفاصيل إضافية بالنقر فوق السهم الخاص بكل تشغيل. انقر فوق عرض ملفات الإخراج لرؤية عناصر الاختبار المجمعة، مثل test_result.xml
و test_result_failures.html
.
الشكل 30. نتائج تشغيل الاختبار.
يمكنك عرض سجلات المضيف المباشر وTradefed في علامة التبويب "السجلات".
الشكل 31. علامة تبويب السجلات.
توجد نتائج الوحدات الفردية في علامة التبويب نتائج الاختبار.
الشكل 32. علامة تبويب نتائج الاختبار.
يمكنك تنزيل الملفات المستخدمة كموارد اختبار بالنقر فوق فتح في علامة التبويب موارد الاختبار.
الشكل 33. علامة تبويب موارد الاختبار.
لرؤية تفاصيل التشغيل التجريبي، مثل create_time ، انتقل إلى علامة التبويب "التكوين".
الشكل 34. علامة التبويب "التكوين".
الخيارات المتقدمة
إدارة ملفات التكوين
تستخدم محطة اختبار Android ملفات التكوين المكتوبة بلغة YAML لتحميل الخيارات المحددة مسبقًا مثل الاختبارات وإنشاء القنوات وإجراءات الجهاز. يظهر أدناه مثال لملف التكوين لبعض الخيارات.
// example_file.yaml
tests:
- id : android.cts.9_0.arm
name: CTS 9.0 (ARM)
test_resource_defs:
- name: android-cts.zip
default_download_url: https://dl.google.com/dl/android/cts/android-cts-9.0_r7-linux_x86-arm.zip
test_resource_type: TEST_PACKAGE
command: cts
env_vars:
- name: TF_PATH
value: ${TF_WORK_DIR}/android-cts/tools:${TF_WORK_DIR}/android-cts/testcases
- name: LD_LIBRARY_PATH
value: ${TF_WORK_DIR}/android-cts/lib:${TF_WORK_DIR}/android-cts/lib64
setup_scripts:
output_file_patterns:
- android-cts/logs/latest/.*
- android-cts/results/latest/.*\.html
- android-cts/results/latest/compatibility_result\..*
- android-cts/results/latest/logo.png
- android-cts/results/latest/test_result.xml
result_file: test_result.xml
java_properties:
- name: CTS_ROOT
value: ${TF_WORK_DIR}
context_file_dir: android-cts/results/
context_file_pattern: '[\d_\.]+\.zip'
retry_command_line: retry --retry 0
runner_sharding_args: --shard-count ${TF_SHARD_COUNT}
build_channels:
- id: google_drive
name: Google Drive
provider_name: Google Drive
device_actions:
- id: flash
name: Flash
test_resource_defs:
- name: bootloader.img
test_resource_type: DEVICE_IMAGE
- name: radio.img
test_resource_type: DEVICE_IMAGE
- name: img.zip
test_resource_type: DEVICE_IMAGE
tradefed_target_preparers:
- class_name: com.android.tradefed.targetprep.RunHostCommandTargetPreparer
option_values:
- name: work-dir
values:
- ${TF_WORK_DIR}
- name: host-setup-command
values:
- adb -s $SERIAL reboot-bootloader
- fastboot -s $SERIAL flash bootloader bootloader.img
- fastboot -s $SERIAL flash radio radio.img
- fastboot -s $SERIAL reboot-bootloader
- fastboot -s $SERIAL -w update img.zip
- adb -s $SERIAL wait-for-device
- name: host-cmd-timeout
values:
- 10m
عندما تقوم بإعداد مثيل Android Test Station الخاص بك، يمكنك مشاركة التكوين الخاص بك مع مستخدمين آخرين عن طريق تصديره كملف. للقيام بذلك، انتقل إلى صفحة الإعدادات وانقر على تصدير في الجزء العلوي الأيمن.
الشكل 35. إدارة ملفات التكوين.
بعد تنزيل ملف التكوين الخاص بك، قم بمشاركة الملف مع مستخدمين آخرين. يمكنهم إضافة ملف التكوين إلى مثيل Android Test Station الخاص بهم عن طريق النقر فوق "استيراد" وتحديد ملف التكوين.
إنشاء إجراء جهاز جديد
تُستخدم إجراءات الجهاز لأتمتة عملية إعداد الجهاز. الإجراءات هي نصوص برمجية يتم تنفيذها على كل جهاز يتم تشغيل الاختبار عليه قبل كل تشغيل اختبار، بما في ذلك قبل إعادة المحاولة. لعرض قائمة بإجراءات الجهاز المتاحة، انتقل إلى صفحة الإعدادات وانقر فوق علامة التبويب إجراءات الجهاز. تم تكوين العديد من إجراءات الجهاز بالفعل، مثل إعادة التشغيل والوميض.
الشكل 36. علامة التبويب "إجراءات الجهاز".
إضافة إجراء جهاز جديد
انقر فوق إجراء جهاز جديد .
الشكل 37. زر إجراء الجهاز الجديد.
أدخل الاسم والوصف.
الشكل 38. اسم إجراء الجهاز.
انقر فوق إضافة مُعد الهدف .
أدخل اسم الفئة الكاملة لمُعد هدف الاتحاد التجاري ، على سبيل المثال،
com.android.tradefed.targetprep.RunHostCommandTargetPreparer
.الشكل 39. إضافة مُعد الهدف.
يمكن العثور على قائمة معدي الأهداف المتاحين في مرجع com.android.tradefed.targetprep .
الشكل 40. قائمة إعداد الهدف.
أضف أي خيارات لاستخدامها مع مُعد الهدف. لعرض الخيارات المتاحة، تحقق من targetprep للكود المصدر لكل مُعد هدف في AOSP:
الشكل 41. مثال على خيار الإجراء.
لإضافة خيار، انقر فوق إضافة خيار إعداد الهدف وأدخل القيم المطلوبة.
الشكل 42. مثال لأمر العمل.
حدد موارد الاختبار اللازمة لتنفيذ إجراء الجهاز، على سبيل المثال، إنشاء صور للوميض. لإضافة تعريف للمورد، انقر فوق "إضافة مورد اختبار" وقم بملء الحقول المطلوبة. إذا كنت تعرف مكان وجود ملفاتك، فيمكنك توفير عنوان URL الافتراضي للتنزيل بالنقر فوق "تصفح" . إذا قبل المُعدون الهدف الدليل كمورد اختبار، فحدد إلغاء الضغط . ثم حدد دليل الوجهة النسبي ضمن دليل العمل المؤقت وأسماء الملفات المراد فك ضغطها. إذا لم يتم تحديد أسماء الملفات، فسيتم فك ضغط كافة الملفات من مصدر الاختبار.
الشكل 43. موارد اختبار العمل.
انقر فوق تحديث .
الشكل 44. إجراء حفظ التغييرات.
إدارة الاختبارات
تحرير اختبار
لتحرير اختبار محفوظ، انتقل إلى صفحة الاختبارات وانقر فوق "تحرير" في صف الاختبار الذي تريد تعديله. بعد تغيير تكوين الاختبار، انقر فوق تحديث .
الشكل 45. تحرير الاختبار.
إضافة اختبار جديد
لإضافة اختبار جديد، انتقل إلى صفحة الاختبارات وانقر فوق إنشاء اختبار جديد . أدخل المعلومات المناسبة وانقر فوق "إنشاء" .
الشكل 46. إنشاء اختبار.
الشكل 47. نسخ الاختبار.
تصدير تكوينات المضيف
بعد تكوين المضيف، يمكنك تصدير تكوينات المضيف إلى ملف. يمكنك تحميل هذا الملف إلى مضيفين آخرين لنسخ التكوينات المحفوظة.
لتصدير تكوينات المضيف، انتقل إلى صفحة الإعدادات وانقر على تصدير في الزاوية اليمنى العليا.
الشكل 48. تصدير تكوين المضيف.
لاستيراد ملف تكوين المضيف، انتقل إلى صفحة الإعدادات وانقر فوق استيراد في الزاوية اليمنى العليا.
الشكل 49. استيراد تكوين المضيف.
استخدم الملفات والدلائل المحلية
بدءًا من الإصدار R11، يمكن الوصول تلقائيًا إلى الملفات الموجودة في الدليل $HOME/.ats_storage
في Android Test Station. انسخ ملفًا أو انقله إلى هذا الدليل، ثم يمكنك تحديده من علامة التبويب "ملف محلي" عند جدولة تشغيل اختباري.
cp /path/to/file $HOME/.ats_storage
الشكل 50. اختيار ملف من الدليل $HOME/.ats_storage
.
يمكنك تحميل أدلة إضافية في مخزن الملفات المحلي باستخدام علامة --mount_local_path
.
mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2
الشكل 51. أدلة إضافية مثبتة في مخزن الملفات المحلي.
تمكين وضع المضيف المتعدد
باستخدام وضع المضيف المتعدد، يمكن للمستخدمين استخدام مضيف وحدة تحكم ATS واحد لإدارة الأجهزة والاختبارات على العديد من مضيفي ATS العاملين.
الشكل 52. بنية الوضع متعدد المضيف.
لبدء تشغيل وحدة تحكم ATS، استخدم الأمر التالي:
mtt start --operation_mode=ON_PREMISE
يمكن الوصول إلى وحدة التحكم في
http://${CONTROLLER_HOSTNAME}:8000
.لبدء العمال، استخدم الأمر التالي:
mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
إذا كانت شبكتك لا تسمح للمضيفين بالتواصل مع بعضهم البعض، فستحتاج إلى اتباع تعليمات الإعداد الأكثر تقدمًا أدناه بشأن عامل ATS.
قم بتوصيل المضيفين باستخدام أنفاق SSH. حدد منافذ للمنافذ الأساسية ومنافذ خادم الملفات، على سبيل المثال، 9000 و9006.
ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
تكوين وبدء تشغيل ATS.
DOCKER_GATEWAY_IP_ADDRESS=$(ip -4 addr show dev docker0 | grep -Eo 'inet [.0-9]+/' | grep -Eo '[.0-9]+')
socat tcp-listen:ATS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:ATS_PORT &
socat tcp-listen:FS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:FS_PORT &
mtt start --control_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:ATS_PORT \ --control_file_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:FS_PORT \ --operation_mode=ON_PREMISE
منظف الملفات
منظف الملفات عبارة عن مهمة cron يتم تشغيلها كل ساعة لتنظيف الملفات بناءً على التكوينات المحددة من قبل المستخدم. لدى ATS تكوينان افتراضيان لأرشفة نتائج التشغيل الاختباري وحذف الملفات المؤقتة. يشرح هذا الدليل كيفية تخصيص السياسات والتكوينات لإدارة ملفاتك بفعالية.
سياسات
تحدد السياسة العملية التي سيتم تنفيذها على الملفات أو الدلائل، ومعايير تحديد الأهداف. العمليات المتاحة موضحة في الجدول:
نوع العملية | حدود |
---|---|
ARCHIVE | remove_file : إذا كان true ، قم بإزالة الملف بعد الأرشفة. |
DELETE |
تعتمد المعايير على سمات الملف ومعلومات النظام. المعايير المتاحة مبينة في الجدول:
نوع المعيار | وصف | حدود |
---|---|---|
LAST_MODIFIED_TIME | تصفية الملفات بناءً على تاريخ ووقت التعديل الأخير. | ttl : يتم دعم أنواع مختلفة من تعبيرات الوقت، على سبيل المثال، 10m ، 2h ، 7 days ، 4w . راجع pytimeparse لمعرفة التنسيقات المدعومة. |
LAST_ACCESS_TIME | تصفية الملفات بناءً على تاريخ ووقت الوصول الأخير. | نفس LAST_MODIFIED_TIME . |
NAME_MATCH | تصفية الملفات بناءً على أسمائها باستخدام التعبير العادي. | pattern : تعبير عادي، على سبيل المثال، [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip للمطابقة الرمز البريدي النتيجة. |
SYSTEM_AVAILABLE_SPACE | قم بتشغيل الإجراءات بناءً على المساحة المتوفرة على النظام. | threshold : يتم تفعيل الإجراء عندما تكون المساحة المتاحة أقل من العتبة، على سبيل المثال، 200 (ب)، 200KB ، 200MB ، 200GB ، 2TB . |
الشكل 53. إضافة سياسة جديدة لتنظيف الملفات.
التكوينات
يجمع التكوين بين سياسة واحدة أو أكثر وأدلة محددة. تتم معالجة الملفات والأدلة الموجودة داخل الدلائل المحددة بناءً على السياسات المحددة. يتم تطبيق السياسات بالترتيب الذي تظهر به في التكوين.
يجب أن تكون جميع الدلائل المستهدفة موجودة ضمن الدليل /data
. إذا كان التكوين الخاص بك يحدد الدليل الهدف على أنه logs
، فسيتم تفسيره على أنه /data/logs
.
الشكل 54. قم بتحرير إعدادات منظف الملفات.
إعادة ضبط
يؤدي النقر فوق "إعادة تعيين الإعدادات" إلى إعادة تكوين منظف الملفات إلى حالته الافتراضية. يؤدي هذا الإجراء إلى مسح كافة العناصر المخصصة.
الشكل 55. إعادة ضبط إعدادات منظف الملفات.
يدعم
تقارير الأخطاء
تساعد مساهمتك في Android Test Station على تحسين تطوير الأداة، ونريد مساهمتك! راجع ملاحظات إصدار ATS للحصول على تفاصيل حول الإصدار الأخير. للإبلاغ عن الأخطاء أو تقديم الاقتراحات، يرجى تقديم تقرير بالأخطاء . يجب على الشركاء الإبلاغ عن الأخطاء أو الاقتراحات عبر قنواتهم الشريكة.