أكمل اختبارات السيارات في صندوق

تعتبر Complete Automotive Tests in a Box (CATBox) حزمة مفتوحة المصدر توفر الأطر والأدوات المطلوبة لتبسيط وتنفيذ اختبارات السيارات بأدنى حد من التكوين. CATBox قابل للتطوير ومتوافق مع الأدوات والبنية التحتية والاختبارات التي تستخدمها لاختبار تطبيقات نظام التشغيل Android Automotive OS (AAOS) والتحقق من صحتها. نتيجة لذلك ، يمكنك تقديم منتجات عالية الجودة إلى السوق.

تصميم وتنفيذ CATBox

توفر مجموعة اختبار CATBox الأدوات والأطر والاختبارات اللازمة لتنفيذ الاختبارات الوظيفية والأداء على جهاز هدف السيارة.

توضح الصورة التالية تصميمًا عالي المستوى لحزمة CATBox.

CATBox

الشكل 1. حزمة CATBox

التجارة

Tradefed هو إطار عمل اختبار مستمر مفتوح المصدر يستخدم لإجراء الاختبارات على أجهزة Android. للحصول على التفاصيل ، راجع نظرة عامة على الاتحاد التجاري .

إطار اختبار السيارات

يعتمد CATBox على إطار اختبار السيارات المسمى Spectatio ، والذي يوفر واجهات برمجة التطبيقات لاختبار التطبيقات المختلفة على أجهزة السيارات. إنه مبني على UI Automator ، وهو إطار اختبار مفتوح المصدر يوفر مجموعة من واجهات برمجة التطبيقات لإنشاء اختبارات واجهة المستخدم التي تتفاعل مع تطبيقات المستخدم والنظام.

تنزيلات مجموعة اختبار CATBox

أندرويد 12

Android 12 هو إصدار التطوير الذي يحمل الاسم الرمزي S. استخدم الروابط التالية لتنزيل مجموعات اختبار CATBox لنظام Android 12:

أندرويد 11

Android 11 هو إصدار التطوير الذي يحمل الاسم الرمزي R. استخدم الروابط التالية لتنزيل مجموعات اختبار CATBox لنظام Android 11:

بناء CATBox

استخدم الأمر catbox build بمجرد أن يتوفر كود Android AOSP على محطة العمل المحلية. لإنشاء حزمة CATBox محليًا:

  1. حدد Device Target وقم بتشغيل الأمر التالي:

    # Select Device Target Based on Device Architecture
    $ lunch <target>
    
  2. لإنشاء CATBox ، قم بتشغيل الأمر التالي:

    # Build CATBox
    $ make catbox
    

    ينشئ هذا الأمر ملف android-catbox.zip في الدليل /out/host/linux-x86/catbox ، والذي يمكن استخدامه بعد ذلك لتشغيل الاختبارات.

إعداد البيئة

إعداد البيئة المطلوب لتنفيذ اختبارات CATBox مشابه لإعداد CTS . لإعداد البيئة ، أكمل كل من المهام التالية:

إعداد وتنفيذ CATBox

استخدم إطار عمل الاختبار Tradefed لإجراء الاختبارات على أجهزة Android. قبل إعداد CATBox ، تعرف على نظرة عامة على الاتحاد التجاري .

لإعداد وتشغيل CATBox ، راجع الأقسام أدناه.

إعداد الجهاز

قبل تشغيل خطة اختبار ، أكمل الخطوات التالية لإعداد جهازك:

  1. تأكد من تثبيت الإصدارات الحديثة لكل من Android Debug Bridge (adb) و Android Asset Packaging Tool (AAPT) ، بالإضافة إلى إضافة موقع هذه الأدوات إلى مسار نظام جهازك. للحصول على التفاصيل ، راجع ADB و AAPT .

  2. قم بتوصيل جهاز واحد على الأقل وإعداد الجهاز قيد الاختبار (DUT) على النحو التالي:

    1. لإعادة ضبط جهاز السيارة إلى إعدادات المصنع ، انقر فوق الإعدادات> النظام> خيارات إعادة التعيين> محو جميع البيانات .
    2. انتظر حتى تتم إعادة تشغيل الجهاز تلقائيًا.
    3. تأكد من تمكين adb. لتأكيد توفر الجهاز ، قم بتشغيل الأمر التالي:

      $ adb devices
      
    4. لتمكين الجذر ، قم بتشغيل الأمر التالي:

      # Enable Root
      $ adb -s DEVICE_SERIAL root
      

      استبدل DEVICE_SERIAL التسلسلي لجهاز السيارة.

    5. اتصل بشبكة Wi-Fi.

قم باستخراج حزمة CATBox

بعد الانتهاء من إعداد الجهاز ، قم بفك ضغط حزمة CATBox وانتقل إلى المجلد المستخرج:

# Extract the CATBox Package
$ unzip android-catbox.zip

# Navigate to extracted CATBox Package
$ cd android-catbox

نفذ الاختبارات في CATBox

لتشغيل CATBox مع خطط الاختبار في حزمة CATBox ، قم بتشغيل ما يلي:

./tools/catbox-tradefed run commandAndExit TEST_PLAN_NAME --serial DEVICE_SERIAL

استبدل DEVICE_SERIAL التسلسلي لجهاز السيارة. إذا كان لديك عدة أجهزة متصلة بالجهاز المضيف ، فاستخدم DEVICE_SERIAL لتمييزها. استبدل TEST_PLAN_NAME باسم خطة الاختبار التي تريد تشغيلها.

للحصول على قائمة كاملة بخطط الاختبار المتاحة ، قم بتشغيل ما يلي:

./tools/catbox-tradefed list plans | grep -i catbox

يعرض الجدول التالي خطط الاختبار المتاحة حسب النوع:

نوع الاختبار اسم
خطط الاختبار الوظيفي catbox-functional-notification
catbox-functional-setting
catbox-functional-dial
catbox-functional-system-setting
catbox-functional-app-info-setting
catbox-functional-network-setting
catbox-functional-security-setting
catbox-functional-sound-setting
catbox-functional-date-time-setting
catbox-functional-appgrid
catbox-functional-home
catbox-functional-lock-screen
catbox-functional-navigation-bar
catbox-functional-ux-restriction
catbox-functional-bluetooth-audio
خطط اختبار الأداء catbox-performance-cold-app-start-up-settings
catbox-performance-hot-app-start-up-settings
catbox-performance-jank-settings
catbox-performance-cold-app-start-up-dialer
catbox-performance-hot-app-start-up-dialer
catbox-performance-jank-contact-list
catbox-performance-jank-notifications
catbox-performance-jank-appgrid
catbox-performance-cold-app-start-up-mediacenter
catbox-performance-hot-app-start-up-mediacenter
catbox-performance-create-and-switch-to-new-guest
catbox-performance-create-and-switch-to-new-user
catbox-performance-create-and-switch-to-precreated-guest
catbox-performance-create-and-switch-to-precreated-user
catbox-performance-switch-to-existing-user

نتائج اختبار CATBox

يتم حفظ نتائج الاختبار في مجلد android-catbox/results/latest لكل من عمليات التنفيذ واختبار الأداء.

  • للحصول على نتائج الاختبار ، راجع test_result.xml .
  • للحصول على تفاصيل اختبارات الفشل ، راجع test_result_failures_suite.html .
  • للحصول على نتائج مقاييس الأداء ، راجع CatboxPerformanceTests.reportlog.json في دليل report-log-files .

يتم حفظ السجلات في المسار android-catbox/logs/latest لكل من عمليات التنفيذ واختبار الأداء.

تتطلب بعض الاختبارات مثل اختبارات الاتصال الهاتفي وصوت البلوتوث وقائمة جهات الاتصال إعدادًا إضافيًا للجهاز.

اختبار الطلب

يتطلب اختبار الاتصال إعداد الجهاز ومعلمات وقت التشغيل. لإعداد الجهاز:

  1. قم بتوصيل الجهاز المحمول بوحدة رأس السيارة من خلال البلوتوث.
  2. تأكد من احتواء هاتف الاختبار على بطاقة SIM لإجراء اختبارات الاتصال وأنه متصل بشبكة الهاتف المحمول.
  3. تستخدم اختبارات الاتصال جهات الاتصال الافتراضية المخزنة على الهاتف. استخدم contacts.vcf لتحميل جهات الاتصال على الهاتف.
  4. استبدل COMPANION_SERIAL بالمعرف التسلسلي للهاتف وقم بتشغيل الأوامر التالية:

    # Contacts can be loaded on the phone by pushing the contacts.vcf file on
    the phone and importing it in the Contacts application.
    
    OR
    
    # Importing contacts using adb.
    
    # Push contacts VCF file to phone
    
    $ adb -s COMPANION_SERIAL push <path-to-downloaded-contacts-vcf-file> /storage/emulated/0/Android/data/com.google.android.contacts/contacts.vcf
    
    # Grant Read Permissions
    
    $ adb -s COMPANION_SERIAL shell pm grant com.google.android.contacts
    android.permission.READ_EXTERNAL_STORAGE
    
    # Import contacts from the VCF file
    
    $ adb -s COMPANION_SERIAL shell am start-activity -W -t 'text/x-vcard' -d file:///storage/emulated/0/Android/data/com.google.android.contacts/contacts.vcf
    -a android.intent.action.VIEW com.google.android.contacts
    
    # Then accept the prompts on the UI to load the contacts.
    
معلمات وقت التشغيل

تستخدم اختبارات الاتصال أرقام هواتف صغيرة وكبيرة لتنفيذ الاختبار. تستخدم اختبارات الاتصال أيضًا اسم جهة الاتصال ورقم جهة الاتصال لإجراء اختبارات البحث. استخدم المعلمات التالية لتوفير هذه المعلومات:

Parameters for Large Phone Number:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:large-phone-number:=< 10 digit phone number>

Parameters for Small Phone Number:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:small-phone-number:=< 3 digit phone number>

Parameters for Search Contact Name:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:search-contact-name:=< some contact name stored on the phone >

Parameters for Search Contact Number:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:search-contact-number:=< contact number of the name provided in the search contact name >

اختبار صوت بلوتوث

لإعداد جهاز لاختبار صوت Bluetooth:

  1. تأكد من تثبيت تطبيق YouTube Music على الهاتف وتسجيل الدخول إلى حساب. إذا لم يكن كذلك ، فقم بتثبيت التطبيق وتسجيل الدخول إلى حساب.
  2. قم بإقران الهاتف يدويًا بجهاز السيارة من خلال Bluetooth.
  3. بمجرد إقران الهاتف ، قم بتشغيل أغنية على الهاتف ثم ابدأ في تنفيذ الاختبار.

قائمة جهات الاتصال اختبار نكتة

لإعداد جهاز للاختبار غير المرغوب فيه لقائمة جهات الاتصال:

  1. تأكد من أن الهاتف يحتوي على العديد من جهات الاتصال بحيث يمكن للاختبار التمرير عبر قائمة جهات الاتصال لجمع المقاييس غير المرغوب فيها.
  2. قم بإقران الهاتف يدويًا بجهاز السيارة من خلال Bluetooth.
  3. بمجرد إقران الهاتف ، يمكن الوصول إلى جهات الاتصال على الجهاز.