complete Automotive Test in a Box (CATBox) הוא חבילת קוד פתוח מספקת את המסגרות והכלים הנדרשים כדי לייעל ולהוציא לפועל את כלי הרכב בדיקות עם תצורה מינימלית. CATBox ניתן להתאמה ותואמת כלים, תשתית ובדיקות שבהם אתם משתמשים כדי לבדוק ולאמת את מערכת Android הטמעות של Automotive OS (AAOS). לכן אפשר לספק ללקוחות המוצרים לזירת המסחר.
עיצוב והטמעה של CATBox
חבילת הבדיקות של CATBox מספקת את הכלים, ה-frameworks והבדיקות שנדרשים כדי לבצע בדיקות פונקציונליות וביצועים במכשיר יעד מכלי רכב בזמן השימוש במכשיר נלווה.
התמונה הבאה ממחישה עיצוב ברמה גבוהה של חבילת CATBox.
איור 1. חבילת CATBox
מסחר
פרוטוקול triF הוא מסגרת בדיקה רציפה (CD) בקוד פתוח שמשמשת לביצוע בדיקות על מכשירי Android לפרטים נוספים, אפשר לעיין במאמר סקירה כללית של איגוד הסחר.
מסגרת בדיקה לכלי רכב
CATBox מבוסס על מסגרת לבדיקת Automotive שנקראת Spectatio, שמספק ממשקי API לבדיקה אפליקציות שונות במכשירים מתחום כלי הרכב. הוא מבוסס על מתוך UI Automator, מסגרת בדיקה בקוד פתוח, שמספקת קבוצה של ממשקי API לבניית בדיקות של ממשק משתמש שמקיימים אינטראקציה עם אפליקציות של משתמשים ומערכת.
הורדות של חבילות הבדיקה של CATBox
Android 14
Android Automotive 14 היא הגרסה של שם קוד ה-U. כדי להוריד, אפשר להשתמש בקישורים הבאים חבילות בדיקה של CATBox ל-Android 14:
12 Android
Android 12 היא ההשקה של אבן הדרך לפיתוח S. בקישורים הבאים אפשר להוריד חבילות בדיקה של CATBox עבור Android 12:
Android 11
Android 11 היא הגרסה של R. משתמשים ב בקישורים הבאים להורדת חבילות בדיקה של CATBox ל-Android 11:
בניית CATBox
אפשר להשתמש בפקודת ה-build של catbox
כשקוד ה-AOSP של Android זמין
תחנת עבודה מקומית.
כדי לפתח את חבילת CATBox באופן מקומי:
בוחרים את יעד המכשיר בהתאם לארכיטקטורת המכשיר ומריצים את הפקודה הבאה:
lunch <target>
כדי ליצור את CATBox, מריצים את הפקודה הבאה:
make catbox
הפקודה הזו יוצרת את הקובץ
android-catbox.zip
הספרייה/out/host/linux-x86/catbox
, שאפשר להשתמש בה כדי להריץ בדיקות.
הגדרת הסביבה
הגדרת הסביבה שנדרשת להפעלת בדיקות CATBox דומה לזו הגדרת CTS. כדי להגדיר יש לבצע כל אחת מהמשימות הבאות:
מתקינים את ADB ו-AAPT.
מתקינים את JDK. צפייה Java Development Kit ל-Ubuntu.
הגדלה של מגבלת הזיכרון. צפייה דרישות לגבי האחסון.
הגדרה והפעלה של CATBox
כדי להריץ את הבדיקות במכשירי Android, משתמשים ב-framework של בדיקה ל-Trended. לפני שמתחילים כדי להגדיר את CATBox תוכלו לקרוא את הסקירה הכללית של Trade Federation.
כדי להגדיר ולהריץ את CATBox, ראו את הקטעים הבאים.
הגדרת המכשיר
לפני שמפעילים תוכנית בדיקה, צריך לפעול לפי השלבים הבאים כדי להגדיר את המכשיר:
חשוב לוודא שהתקנתם את הגרסאות האחרונות של גשר לניפוי באגים ב-Android (adb) את הרצף Android Asset Packaging Tool (AAPT), וגם הוסיפו את המיקום של הכלים האלה לנתיב המערכת של במחשב. פרטים נוספים זמינים במאמר ADB ו-AAPT.
צריך לחבר מכשיר אחד לפחות ולהכין את המכשיר בבדיקה (DUT) בתור ככה:
כדי לאפס את מכשיר הרכב להגדרות המקוריות, צריך לעבור אל הגדרות > מערכת > איפוס אפשרויות > מחיקת כל הנתונים.
ממתינים עד שהמכשיר יופעל מחדש באופן אוטומטי.
צריך לוודא ש-adb מופעל. כדי לוודא שהמכשיר זמין, מריצים את הפקודה הבאה:
adb devices
כדי להפעיל את הרמה הבסיסית (root), מריצים את הפקודה הבאה:
adb -s DEVICE_SERIAL root
מחליפים את
DEVICE_SERIAL
במזהה הסידורי של מכשיר לרכב.מתחברים ל-Wi-Fi.
חילוץ חבילת CATBox
אחרי הגדרת המכשיר, מחלצים את חבילת ה-CATBox ועוברים אל התיקייה שחולץ:
unzip android-catbox.zip
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 |
בדיקות פונקציונליות. |
catbox-functional-app-info-setting |
בדיקות פונקציונליות של הגדרת פרטי האפליקציות. |
catbox-functional-admin-user-grant-permissions |
בדיקות פונקציונליות של משתמש עם הרשאת אדמין. |
catbox-functional-app-info-setting-ui-elements |
בדיקות פונקציונליות של הגדרת פרטי האפליקציות. |
catbox-functional-appgrid |
בדיקות פונקציונליות של רשת האפליקציות. |
catbox-functional-base |
רשימה של בדיקות פונקציונליות. |
catbox-functional-bluetooth-audio |
בדיקות פונקציונליות של אודיו Bluetooth. |
catbox-functional-bluetooth-palette |
בדיקות פונקציונליות של שורת הסטטוס. |
catbox-functional-bluetooth-tests |
בדיקות Bluetooth באמצעות Mobly. |
catbox-functional-brightness-palette |
בדיקות פונקציונליות של שורת הסטטוס. |
catbox-functional-btmoped |
בדיקות פונקציונליות המבוססות על טוסטוס Bluetooth. |
catbox-functional-date-time-setting |
הגדרת תאריך ושעה לביצוע בדיקות פונקציונליות. |
catbox-functional-dial |
חיוג לבדיקות פונקציונליות. |
catbox-functional-display-setting |
בדיקות פונקציונליות של ההגדרות במסך. |
catbox-functional-driving-optimized-apps |
בדיקות פונקציונליות להגבלת חוויית המשתמש. |
catbox-functional-enable-developers-option |
הפעלת בדיקות פונקציונליות של אפשרויות למפתחים. |
catbox-functional-home |
בדיקות פונקציונליות ביתיות. |
catbox-functional-lock-screen |
בדיקות פונקציונליות של מסך הנעילה. |
catbox-functional-mediacenter |
בדיקות פונקציונליות של Media Center. |
catbox-functional-microphone-recent-apps |
בדיקות פונקציונליות של הגדרת המיקרופון. |
catbox-functional-microphone-setting |
בדיקות פונקציונליות של הגדרת המיקרופון. |
catbox-functional-multiuser |
בדיקות פונקציונליות מרובות משתמשים. |
catbox-functional-multiuser-system-user |
בדיקות פונקציונליות מרובות משתמשים. |
catbox-functional-navigation-bar |
בדיקות פונקציונליות של סרגל הניווט. |
catbox-functional-network-palette |
בדיקות פונקציונליות של שורת הסטטוס. |
catbox-functional-network-setting |
בדיקות פונקציונליות של הגדרות רשת. |
catbox-functional-notification |
בדיקות פונקציונליות של התראות. |
catbox-functional-privacy-permission-manager |
בדיקות פונקציונליות להגדרה של הרשאות לאפליקציות לפרטיות. |
catbox-functional-privacy-setting |
בדיקות פונקציונליות של הגדרת המיקרופון. |
catbox-functional-privacy-setting-ui-elements |
בדיקות פונקציונליות של הגדרות הפרטיות. |
catbox-functional-profile-icon |
בדיקות פונקציונליות של סרגל סמל הפרופיל. |
catbox-functional-profiles-icon-list |
בדיקות לרשימת סמלי הפרופילים. |
catbox-functional-security-setting |
בדיקות פונקציונליות של הגדרות אבטחה. |
catbox-functional-setting |
הגדרת בדיקות פונקציונליות. |
catbox-functional-settings-location |
הגדרת בדיקות מיקום. |
catbox-functional-sound-setting |
בדיקות פונקציונליות של הגדרות צלילים. |
catbox-functional-status-bar |
בדיקות פונקציונליות של שורת הסטטוס. |
catbox-functional-storage-setting |
בדיקות פונקציונליות של הגדרות האחסון. |
catbox-functional-system-setting |
בדיקות פונקציונליות של הגדרות המערכת. |
catbox-functional-systemui |
בדיקות של ממשק המשתמש של המערכת. |
catbox-functional-ux-restriction |
בדיקות פונקציונליות להגבלת חוויית המשתמש. |
catbox-functional-ux-restriction-facet-bar |
בדיקות פונקציונליות להגבלת חוויית המשתמש. |
בטבלה הבאה מפורטות תוכניות בדיקת הביצועים של CATBox.
תוכניות לבדיקת ביצועים | תיאור |
---|---|
catbox-performance-cold-app-start-up-dialer |
בדיקת ביצועים של הפעלה במצב התחלתי (cold start) של האפליקציה לחייגן ולטלפון. |
catbox-performance-cold-app-start-up-mediacenter |
בדיקת ביצועים של הפעלה במצב התחלתי של אפליקציה עבור Media Center. |
catbox-performance-cold-app-start-up-settings |
בדיקת ביצועים של הפעלה במצב התחלתי (cold start) של ההגדרות. |
catbox-performance-create-and-switch-to-new-guest |
כדאי למדוד את זמן האחזור כדי לעבור לאורח חדש. |
catbox-performance-create-and-switch-to-new-user |
צריך למדוד את זמן האחזור כדי לעבור למשתמש חדש שאין לו הרשאת אדמין. |
catbox-performance-hot-app-start-up-dialer |
בדיקת ביצועי הפעלה של אפליקציה חמה עבור החייגן והטלפון. |
catbox-performance-hot-app-start-up-mediacenter |
בדיקת ביצועים של הפעלה של אפליקציה חמה עבור Media Center. |
catbox-performance-hot-app-start-up-settings |
בדיקת ביצועים של הפעלה של אפליקציה חמה עבור ההגדרות. |
catbox-performance-jank-appgrid |
בדיקת הביצועים של Appgrid. |
catbox-performance-jank-contact-list |
בדיקת ביצועים של אנשי קשר. |
catbox-performance-jank-media |
בדיקות ביצועים למדיה. |
catbox-performance-jank-media-switch-playback |
בדיקת ביצועים להפעלה של מתג מדיה. |
catbox-performance-jank-notifications |
בדיקת ביצועים של התראות. |
catbox-performance-jank-settings |
בדיקת ביצועים של ההגדרות. |
catbox-performance-switch-to-existing-user |
כדאי למדוד את זמן האחזור כדי לעבור למשתמש קיים. |
הרצת הבדיקה הצדדית של המארח מרובה מכשירים
בביצוע בדיקות בצד המארח מרובות מכשירים נעשה שימוש ב-CATBox כדי להריץ את הבדיקה
בפעילות אחת. לדוגמה, BTDiscoveryTest
:
make catbox
./tools/catbox-tradefed run commandAndExit catbox-functional-bluetooth-tests --{phone}serial <serial> --{auto}serial <serial> --mobly-host:mobly-par-file-name BTDiscoveryTest
CATBox מתקין את apk
ולאחר מכן את הבדיקה מתבצעת ב-Python הנכון.
בסביבת הביצוע.
בדיקת תוצאות הבדיקה של CATBox
התוצאות של הפעלות של בדיקות פונקציונליות ושל בדיקות ביצועים נשמרות
android-catbox/results/latest
סוג התוצאות | מיקום |
---|---|
תוצאות בדיקה | test_result.xml |
פרטים על בדיקות שנכשלו | test_result_failures_suite.html |
התוצאות של מדדי הביצועים | /report-log-files/CatboxPerformanceTests.reportlog.json |
הפעלות של בדיקות פונקציונליות וביצועים | /android-catbox/logs/latest |