Complete Automotive Tests in a Box (CATBox) یک بسته منبع باز است که چارچوب ها و ابزارهای مورد نیاز برای ساده سازی و اجرای تست های خودرو را با حداقل پیکربندی فراهم می کند. CATBox با ابزارها، زیرساختها و آزمایشهایی که برای آزمایش و اعتبارسنجی پیادهسازیهای سیستم عامل Android Automotive (AAOS) خود استفاده میکنید، مقیاسپذیر و سازگار است. در نتیجه می توانید محصولات باکیفیت را به بازار عرضه کنید.
طراحی و پیاده سازی CATBox
مجموعه تست CATBox ابزارها، چارچوبها و تستهای مورد نیاز برای اجرای تستهای عملکردی و عملکردی روی دستگاه هدف خودرو را فراهم میکند.
تصویر زیر طراحی سطح بالایی از یک بسته CATBox را نشان می دهد.
شکل 1. بسته CATBox
معامله شد
Tradefed یک چارچوب تست پیوسته منبع باز است که برای اجرای تست ها در دستگاه های اندرویدی استفاده می شود. برای جزئیات، به نمای کلی فدراسیون تجارت مراجعه کنید.
چارچوب تست خودرو
CATBox بر اساس یک چارچوب تست Automotive به نام Spectatio است که API هایی را برای آزمایش برنامه های مختلف در دستگاه های خودرو ارائه می دهد. این بر روی UI Automator ساخته شده است، یک چارچوب تست منبع باز، که مجموعهای از APIها را برای ساخت تستهای UI که با برنامههای کاربر و سیستم تعامل دارند، ارائه میکند.
دانلود مجموعه تست CATBox
اندروید 12
Android 12 انتشار نقطه عطف توسعه با اسم رمز S است. برای دانلود مجموعه تست CATBox برای اندروید 12 از لینک های زیر استفاده کنید:
اندروید 11
اندروید 11 انتشار نقطه عطف توسعه با نام رمز R است. برای دانلود مجموعه تست CATBox برای اندروید 11 از لینک های زیر استفاده کنید:
ساخت CATBox
هنگامی که کد AOSP Android در ایستگاه کاری محلی در دسترس است از دستور ساخت catbox
استفاده کنید. برای ساخت بسته CATBox به صورت محلی:
Device Target را انتخاب کرده و دستور زیر را اجرا کنید:
# Select Device Target Based on Device Architecture $ lunch <target>
برای ساخت CATBox دستور زیر را اجرا کنید:
# Build CATBox $ make catbox
این دستور فایل
android-catbox.zip
را در دایرکتوری/out/host/linux-x86/catbox
، که سپس میتواند برای اجرای آزمایشها استفاده شود.
تنظیم محیط
تنظیمات محیطی مورد نیاز برای اجرای تست های CATBox مشابه راه اندازی CTS است. برای تنظیم محیط، هر یک از وظایف زیر را انجام دهید:
- ADB و AAPT را نصب کنید.
- JDK را نصب کنید. به کیت توسعه جاوا برای اوبونتو مراجعه کنید.
- افزایش محدودیت حافظه به شرایط ذخیره سازی مراجعه کنید.
راه اندازی و اجرای CATBox
از چارچوب تست Tradefed برای اجرای تست ها در دستگاه های اندرویدی استفاده کنید. قبل از راه اندازی CATBox، با نمای کلی فدراسیون تجارت آشنا شوید.
برای راه اندازی و اجرای CATBox به بخش های زیر مراجعه کنید.
راه اندازی دستگاه
قبل از اجرای طرح آزمایشی، مراحل زیر را برای تنظیم دستگاه خود انجام دهید:
مطمئن شوید که نسخه های اخیر پل اشکال زدایی اندروید (adb) و ابزار بسته بندی دارایی اندروید (AAPT) را نصب کرده اید و همچنین مکان این ابزارها را به مسیر سیستم دستگاه خود اضافه کرده اید. برای جزئیات، به ADB و AAPT مراجعه کنید.
حداقل یک دستگاه را وصل کنید و دستگاه تحت آزمایش (DUT) را به شرح زیر آماده کنید:
- برای بازنشانی کارخانهای دستگاه خودرو، روی تنظیمات > سیستم > بازنشانی گزینهها > پاک کردن همه دادهها کلیک کنید.
- صبر کنید تا دستگاه به طور خودکار راه اندازی مجدد شود.
مطمئن شوید که adb فعال است. برای اطمینان از در دسترس بودن دستگاه، دستور زیر را اجرا کنید:
$ adb devices
برای فعال کردن root، دستور زیر را اجرا کنید:
# Enable Root $ adb -s DEVICE_SERIAL root
DEVICE_SERIAL
را با شناسه سریال دستگاه خودرو جایگزین کنید.به وای فای متصل شوید.
بسته 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
برای اجرای تست عملکردی و عملکردی ذخیره میشوند.
برخی از آزمایشها مانند شمارهگیری، بلوتوث صوتی، و تستهای جابجایی فهرست مخاطبین نیاز به تنظیم دستگاه اضافی دارند.
تست شماره گیری
تست Dial به تنظیمات دستگاه و پارامترهای زمان اجرا نیاز دارد. برای راه اندازی دستگاه:
- دستگاه تلفن همراه را از طریق بلوتوث به هد یونیت Automotive متصل کنید.
- مطمئن شوید که تلفن آزمایشی دارای یک سیم کارت برای اجرای تست های شماره گیری است و به شبکه تلفن همراه متصل است.
- تست شماره گیری از مخاطبین پیش فرض ذخیره شده در تلفن استفاده می کند. از contacts.vcf برای بارگیری مخاطبین در تلفن استفاده کنید.
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 >
تست صوتی بلوتوث
برای راهاندازی دستگاهی برای تست صدای بلوتوث:
- مطمئن شوید که برنامه YouTube Music روی گوشی نصب شده باشد و به حساب کاربری وارد شده باشید. اگر نه، برنامه را نصب کنید و به حساب کاربری وارد شوید.
- تلفن را به صورت دستی از طریق بلوتوث با دستگاه خودرو جفت کنید.
- پس از جفت شدن تلفن، آهنگی را در تلفن پخش کنید و سپس شروع به اجرای آزمایش کنید.
تست jank لیست مخاطبین
برای راهاندازی دستگاهی برای تست jank فهرست مخاطبین:
- مطمئن شوید که تلفن چندین مخاطب دارد تا آزمایش بتواند در لیست مخاطبین برای جمعآوری معیارهای jank حرکت کند.
- تلفن را به صورت دستی از طریق بلوتوث با دستگاه خودرو جفت کنید.
- پس از جفت شدن تلفن، می توان به مخاطبین در دستگاه دسترسی داشت.