OmniLab ATS הוא כלי בדיקה שמפתחי Android ומהנדסי בדיקה יכולים להשתמש בו להשתמש בממשק משתמש להרצת חבילות בדיקה סטנדרטיות של Android, כמו חבילה לבדיקת תאימות ל-Android (CTS). הכלי הזה משמש כממשק אינטרנט למסגרות בדיקה שונות, Trade Federation (TF) וגם Google Mobly, שמאפשר להריץ CTS בדיקות במכשירים מרובים בקבוצת מכשירי בדיקה עם הגדרה מינימלית, וגם לקבוע לוח זמנים להרצת בדיקות באופן רציף.
הגדרת OmniLab ATS
הקטע הזה מסביר איך להתקין ולהגדיר את OmniLab ATS.
ב-OmniLab ATS משתמשים בקוד מקור מהמיקומים הבאים:
- OmniLab ATS קוד מקור
- קוד המקור של TradeFed Cluster
התקנת OmniLab ATS
פועלים בהתאם לכל דרישות החומרה והתוכנה עבור חבילות הבדיקה שמריצים.
הדרישות ל-CTS נמצאות ב- source.android.com.
אין דרישות חומרה נוספות ל-OmniLab ATS, אבל אנחנו ממליצים באמצעות דרישה למארח CTS בתור נקודת מוצא.
יש שתי דרכים להתקין את OmniLab ATS:
- מפעילים את תוכנת ההתקנה.
- להתקין אותו באופן ידני, בשביל זה צריך להתקין תוכניות ומשאבים.
התקנה באמצעות תוכנת ההתקנה
ב-Ubuntu 20.04 ואילך, תוכנת מנהל ההתקנה מתקינה ומגדירה את כל התוכניות ואת המשאבים שדרושים להפעלת OmniLab ATS.
כדי להשתמש בתוכנית ההתקנה:
מריצים את תוכנת ההתקנה:
curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
מריצים את הפקודה
mtt version
כדי לבדוק את הגרסה המותקנת של OmniLab ATS CLI.
הטמעה באופן ידני
התקנת Docker
פועלים לפי הוראות להתקנת Docker Community Edition (CE) במחשב Linux שלכם.
פועלים לפי שלבים לאחר ההתקנה כדי לנהל את Docker כמשתמש שאינו Root.
יכול להיות שיהיה צורך להפעיל מחדש את חלון הטרמינל או לצאת מהחשבון ולהיכנס אליו שוב כדי שהשינויים בהרשאות ייכנסו לתוקף.
התקנת Python 3
ה-OmniLab ATS CLI מאומת מול גרסאות 3.7 עד 3.11 של Python.
למערכת 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
הורדת ה-CLI של OmniLab ATS
מורידים את חבילת ממשק שורת הפקודה (CLI) כאן.
הפעלת OmniLab ATS
מפעילים את OmniLab ATS באמצעות הפקודה הבאה:
mtt start
בפעם הראשונה שממשק המשתמש יופעל, יכול להיות שיחלפו כמה דקות עד שהוא יופיע. ממשק ה-CLI
מציג כתובת URL כדי לגשת לממשק המשתמש בדפדפן. כברירת מחדל, כתובת ה-URL של האתר היא
localhost:8000
במקרה הצורך, ניתן לשנות את יציאת ברירת המחדל במהלך ההפעלה עם
הדגל --port
.
אם יש גרסה חדשה יותר, אפשר לעדכן לגרסה הנוכחית. אפשר יש לבדוק את נתוני הגרסה של הגרסאות העדכניות ביותר.
כדי לעדכן לגרסה הנוכחית, מריצים את:
mtt start --force_update
כדי להפסיק את האפליקציה, מריצים את:
mtt stop
כדי להציג רשימה של פקודות אחרות, משתמשים ב:
mtt --help
גיבוי ושחזור של מסד הנתונים
כדי לגבות את מסד הנתונים של OmniLab 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"
אשף ההגדרה
לאחר שמתקינים ומריצים את OmniLab ATS בפעם הראשונה, אשף ההגדרה לוקח מספר שלבים שיעזרו לכם להתאים אישית את הכלי לסביבה שלכם. כלשהו את השינויים שתבצעו כאן ניתן להגדיר מחדש מאוחר יותר דרך הדף 'הגדרות'.
שחזור של גיבוי תצורה
אם קובץ תצורה מגובה מ- מארח אחר של OmniLab ATS, אפשר להעלות את הקובץ כדי להעתיק את כל ההגדרות האישיות שונה מהמארח הזה בלחיצה על הלחצן העלאת קובץ.
איור 1. מתבצע שחזור של גיבוי של הגדרות אישיות.
הגדרת חשבון השירות שמשמש כברירת מחדל
אפשר להגדיר חשבון שירות. שבו OmniLab ATS משתמש כברירת מחדל בגישה למשאבים שלכם (לדוגמה, Google Cloud Storage, Google Drive). כדי לאמת את חשבון השירות, לוחצים על Upload Service Account Key (העלאת מפתח של חשבון שירות) ובוחרים את קובץ מפתח ה-JSON של חשבון השירות שלך.
איור 2. הגדרת חשבון השירות.
כשחשבון השירות יאומת, כתובת האימייל של החשבון הכתובת מופיעה בפינה הימנית העליונה של הדף. כדי להחליף את השירות חשבון, לוחצים על שם החשבון, מסירים את חשבון ברירת המחדל הנוכחי ומעלים מפתח חדש לחשבון שירות.
איור 3. שינוי של חשבון השירות.
ייבוא של קבוצות הגדרות
קבוצת הגדרות היא חבילה של הגדרות להרצת חבילות בדיקה, כולל הגדרות קשורות פעולות שונות במכשיר, וליצור ערוצים. הגדרות התצורה מתארחות בשירות ספציפי של Google קטגוריה של Cloud Storage (GCS). אחרי אימות ערוץ ה-build של GCS באמצעות בחשבון Google, תוצג רשימה של כל קבוצות ההגדרות שזמינות לכם.
בוחרים את קבוצות התצורה שרוצים להוסיף למארח של תחנת הבדיקה ולוחצים על ייבוא נבחר.
איור 4. ייבוא של קבוצת תצורה.
הכללת הגדרות Wi-Fi
בחלק מבדיקות ה-CTS, המכשיר צריך להתחבר לנקודת Wi-Fi לשיתוף אינטרנט. כדי לבחור את רשת Wi-Fi, מזינים את SSID של Wi-Fi ואופציונלי, Wi-Fi PSK.
איור 5. הגדרות של נקודת Wi-Fi לשיתוף אינטרנט.
לאחר השלמת אשף ההגדרה, הדף ייטען מחדש עם ההגדרות החדשות הוחלו.
חיבור מכשיר
יש להפעיל את האפשרות 'ניפוי באגים ב-USB' כדי להשתמש במכשיר לצורך בדיקה. כדי להפעיל ניפוי באגים:
פועלים לפי ההוראות ב הפעלת 'אפשרויות למפתחים' ו ניפוי באגים.
אם אתם מתכננים להשתמש בגרסת build לבדיקה של Android build שנטענו מראש באמצעות מפתחות ADB מותאמים אישית, קובצי
.adb_key
בהתאמה אישית בספרייה~/.android/
.הקבצים נטענים באופן אוטומטי ומועברים אל ADB כדי להפעיל USB באופן אוטומטי ניפוי באגים אחרי שהמכשיר יהבהב במכשירים שמריצים את גרסאות ה-build האלה.
מחברים את המכשיר למכונה המארחת באמצעות USB.
המכשיר מופיע בכרטיסייה OmniLab ATS devices תוך דקה אחרי רענון ממשק האינטרנט. אפשר גם לראות את מצב המכשירים ב- הכרטיסייה הזו.
איור 6. מתבצע חיבור של מכשיר.
מצבי המכשיר השונים הם:
- זמין – המכשיר מחובר ומוכן להרצת בדיקה.
- מוקצה – המכשיר מחובר ומבצע בדיקה. כל אחד המכשיר יכול להריץ רק בדיקה אחת בכל פעם, ולכן המכשיר צריך לסיים את את הבדיקה הנוכחית לפני הרצת בדיקה חדשה.
הפעלת בדיקה
בחירת בדיקה
OmniLab ATS מגיע עם קבוצה של תצורות CTS בחבילות מראש. כדי להריץ אחד מ- בבדיקות האלה, נכנסים לכרטיסייה 'חבילות בדיקה' ולוחצים על הרצת בדיקה לבדיקה.
איור 7. בוחרים בדיקה.
כדי לערוך או להוסיף בדיקות חדשות, יש לעיין במאמר הוספת בדיקות.
הגדרת הרצת הבדיקה
עורכים את הפרמטרים שבהם ייעשה שימוש בהרצת הבדיקה הספציפית הזו. רוב הפרמטרים מאוכלס מראש בערכים שהוגדרו בהגדרות האישיות של הבדיקה שנבחרו.
אפשר להשלים את השלב הזה עם ערכי ברירת המחדל, אבל אפשר לשנות כל אחד את הפרמטרים, כמו Max Retry ו-Command, בהתאם לצרכים שלכם.
איור 8. הגדרת הרצת בדיקה.
הפרמטרים של הרצת הבדיקה הם:
- Name – השם של חבילת הבדיקות שרוצים להפעיל.
- Run count – מספר הפעמים שבהן יש לבצע את הרצת הבדיקה הזו כאשר מתוזמן. הפעלות בדיקה מתוזמנות באמצעות Trade Federation, עם עד 20 תפעל במקביל, אם יש אפשרות לעשות זאת.
- מקסימום ניסיון חוזר – מספר הפעמים המקסימלי להרצת בדיקה, אם לפחות פעם אחת. נכשל בבדיקה. בדרך כלל הערך הזה מוגדר ל-4-6 ניסיונות חוזרים להרצת CTS מלאה, טיפול בבדיקות בעייתיות.
- זמן קצוב לתפוגה של תור – אם הרצת בדיקה נשארת במצב בהמתנה בתור למשך זמן רב מדי, היא מבוטלת באופן אוטומטי. ציון משך זמן ההמתנה לפני הביטול כאן. ברירת המחדל היא 24 שעות.
Command – הפקודה להרצת חבילת הבדיקה. אפשר להזין הארגומנטים בשורת הפקודה כאן. לדוגמה, מריצים מודול ספציפי ב-CTS 8.1 עם:
cts-suite -m ShortModuleName
Retry Command – הפקודה לביצוע ניסיון חוזר של חבילת בדיקה. אפשר להוסיף ארגומנטים נוספים בשורת הפקודה. לדוגמה, כדי לנסות שוב רק מודול ספציפי ב-CTS 8.1, השתמשו ב:
cts --retry 0 -m ShortModuleName
ניסיון חוזר של הארגומנטים עשוי להיות שונה מאלה שזמינים בפקודה הראשונית, לכן צריך לבדוק את הפרמטרים הנתמכים באתר הרשמי עבור הבדיקה שנבחרה סוויטה.
הרצת בדיקה קודמת - אם אתם רוצים להריץ מחדש הרצת בדיקה קודמת:
מקומי – אם ההפעלה התחילה במארח הנוכחי, יש להזין את הרצת הבדיקה המזהה שמוצג כשמציגים את פרטי הרצת הבדיקה.
איור 9. הרצת בדיקה מקומית קודמת.
מרחוק – אם ההפעלה התחילה במארח אחר, יש להעלות את הבדיקה תוצאות על ידי בחירה באפשרות מרחוק, לאחר לחיצה על העלה תוצאות בדיקה קובץ, ובוחרים קובץ מהאחסון המקומי.
איור 10. הרצת בדיקה קודמת מרחוק.
מכשירים נבחרים
יש ללחוץ על תיבות הסימון כדי לבחור את המכשירים להקצאה להפעלת הבדיקה סוויטה. ספירת המפוצלים אמורה להשתנות באופן אוטומטי כדי להתאים למספר המכשירים נבחרו.
איור 11. בחירת המכשירים מתבצעת.
כדי לבחור מכשירים לפי מאפיינים שאינם מספרים סידוריים של מכשירים, אפשר מזינים את הערך 'מפרטי המכשיר'. לדוגמה, כדי לבחור 3 מכשירים ששם המוצר שלהם "bramble", מזינים את הפקודה הבאה:
product:bramble;product:bramble;product:bramble
המאפיינים הנתמכים הם:
- מזהה_build
- device_serial
- סוג_מכשיר
- שם מארח
- מוצר
- וריאציית המוצר
- מצב_SIM
כל המכשירים שנבחרו חייבים להיות במצב זמין כדי להפעיל את הרצת הבדיקה. וכולם עוברים למצב הקצאה במהלך הרצת הבדיקה. א' הפעלת הבדיקה נמצאת במצב בתור בזמן שהיא ממתינה שהמכשירים יהפכו זמינים.
הוספת פעולות לגבי מכשירים
פעולות במכשיר הן סקריפטים שאפשר להריץ לפני כל הרצה של בדיקה. במידה מסוימת הפעולות במכשיר כבר מוגדרות, כמו הבהוב והפעלה מחדש. שפת תרגום יצירת פעולות חדשות במכשיר: יצירת פעולה חדשה במכשיר.
איור 12. פעולות במכשיר.
כדי להוסיף פעולה במכשיר להרצת בדיקה, לוחצים על הוספת פעולה חדשה ובוחרים את תיבות סימון לפעולות להוספה ולוחצים על הוספת פעולות. פעולות במכשיר מתבצעות ברצף. כדי לשנות את סדר הפעולות, אפשר לגרור אותן.
איור 13. סידור מחדש של הפעולות.
הגדרת משאבים לבדיקה
משאבי בדיקה הם קבצים שנדרשים לביצוע הרצת בדיקה. לדוגמה, ריצה
ל-CTS נדרש קובץ android-cts*.zip
, והבהוב של המכשיר דורש
מספקים את קובץ האימג' של ה-build.
כתובת ה-URL להורדה של קובץ ה-ZIP של חבילת הבדיקה אמורה להיראות כברירת מחדל כ-Google Drive קישורים שניתנו לשותפים. אפשר לבחור קובץ אחר באמצעות לחיצה על עיון. בחלון הקופץ, אפשר להזין קישור להורדת קובץ ולהשתמש בקובץ מ בערוץ build מאומת, או להעלות קובץ לשימוש באחסון מקומי.
איור 14. משאבי בדיקה.
בהמשך מופיע החלון הקופץ לבחירת משאב לבדיקה לפי כתובת URL באינטרנט. אפשר מזינים את הקישור לכתובת ה-URL להורדה ולוחצים על הלחצן בחירה כדי לאשר בחירה.
איור 15. בורר המשאבים לבדיקה – כתובת URL מהאינטרנט.
אם העליתם משאבים ל-Google Grave , ל-Google Cloud Storage (GCS) או בערוצים אחרים, תוכלו גם לנווט לכרטיסייה של הערוץ הספציפי ולבחור את המשאבים הקיימים. הנה דוגמה לבחירת משאב מ-Google Drive.
איור 16. בורר המשאבים לבדיקה – Google Drive.
בנוסף לבחירת קבצים בלבד, יש תמיכה גם בתווים כלליים לחיפוש השדה שם הקובץ. ניתן למצוא את התיעוד. כאן.
איור 17. Test Resource Selector – תמיכה בתבניות עם תווים כלליים לחיפוש.
אפשר גם לבחור קובץ מאחסון הקבצים המקומי של OmniLab ATS. אפשר להעלות קבצים באחסון הזה, או להשתמש ישירות בספריות ובקבצים מקומיים.
איור 18. בורר המשאבים לבדיקה – מאגר קבצים מקומי.
הוספת הגדרות להרצה מחדש
ניתן לתזמן שידורים חוזרים שיתחילו אחרי שההפעלה הראשית תסתיים, וגם טוען את התוצאות, אבל יכול להשתמש במכשיר, בפעולות או במשאבים שונים.
איור 19. הוספת הגדרות להרצה מחדש.
התחלת הרצה לניסיון
אחרי שמזינים את המידע הדרוש להרצת הבדיקה, לוחצים על התחלת הבדיקה הפעלה. אם כל המידע תקין, הרצת הבדיקה תתחיל, שופנה לדף שבו אפשר לראות את הפרטים ואת ההתקדמות של הרצת הבדיקה.
איור 20. התחלת הרצה לניסיון.
יצירת תוכנית בדיקה
תוכניות בדיקה משמשות ליצירת הפעלות בדיקה לפי לוח זמנים תקופתי. לדוגמה, מריצה CTS 9.0 כל יום בשעה 17:00. כדי ליצור תוכנית בדיקה חדשה, לוחצים על יצירת תוכנית בדיקה חדשה תוכנית בדיקה חדשה.
איור 21. יצירת תוכנית לבדיקה.
הגדרת תוכנית בדיקה
מזינים את השם של תוכנית הבדיקה ואת התוויות שרוצים להוסיף. לאחר מכן בוחרים לוח זמנים לשימוש.
- ידנית – תוכנית הבדיקה יוצרת הרצת בדיקה רק כשמשתמש לוחץ מפעילים את תוכנית הבדיקה בדף של רשימת תוכניות הבדיקה.
- תקופתי - תוכנית הבדיקה מתזמנת באופן אוטומטי את הרצת הבדיקות נבחר לוח זמנים תקופתי. לדוגמה, תזמון הרצת בדיקה מדי יום בשעה 17:00.
- מותאם אישית – תוכנית הבדיקה מתזמנת באופן קבוע את הבדיקות על סמך
הוזן ביטוי cron. לדוגמה,
כדי לתזמן הרצת בדיקה מדי יום בשעה 17:00, ביטוי ה-cron
0 17 * * *
איור 22. הגדרה של תוכנית בדיקה.
הוספה של חבילות בדיקה
כדי להוסיף חבילות בדיקה שרוצים לתזמן לפי תוכנית הבדיקה, לוחצים על + הוספה בדיקת ההגדרות האישיות. בוחרים חבילת בדיקות מהתפריט הנפתח Name ולוחצים על השלב הבא. לאחר מכן בוחרים את המכשירים שבהם רוצים להריץ את הבדיקה לוחצים על Add Configuration (הוספת הגדרה). אפשר להוסיף הגדרות מרובות לכל בדיקה בתוכנית.
איור 23. הגדרת הרצת בדיקה.
הוספת פעולות לגבי מכשירים
צריך להוסיף את הפעולות במכשיר שרוצים לבצע לפני כל הרצת בדיקה. אפשר לקרוא פרטים נוספים במאמר הוספת פעולות במכשיר.
איור 24. מתבצעת הוספה של פעולות במכשיר.
הגדרת משאבים לבדיקה
ההוספה של משאבי בדיקה לתוכניות בדיקה זהה להוספה שלהם לבדיקות ספציפיות פועלות. פרטים נוספים מופיעים במאמר הגדרה של משאבי בדיקה.
איור 25. הגדרת משאבים לבדיקה.
צפייה בהפעלות הבדיקה
רשימת הרצה לבדיקה
להציג את הרשימה של הפעלות הבדיקה המתוזמנות בדף 'הרצת בדיקה'. לוחצים על הצגה כדי פרטים נוספים על הרצת בדיקה.
אפשר גם לסנן את הרשימה על ידי הזנת מחרוזת בסרגל הסינון, הקשה על המקש Enter. אפשר להשתמש במספר מסננים על ידי הפרדה שלהם באמצעות פסיק. המסנן מחזיר את כל השורות שמכילות את הטקסט המדויק (ללא מחרוזת משנה תואם) בכל עמודה, לא כולל סטטוס ונוצר.
מסנן ריק מחזיר את כל השורות. אין כרגע דרך לסנן לפי שורות עם ערכים ריקים.
איור 26. רשימה להרצה לבדיקה.
פרטי ההרצה של הבדיקה
אפשר לראות כאן את הפרטים של הרצת בדיקה, כמו הסטטוס, יומנים תוצאות.
איור 27. פרטי ההרצה של הבדיקה.
סטטוס הרצה לבדיקה
ההתקדמות בביצוע הבדיקה מוצגת בקטע 'סטטוס'. אם יש כמו התקדמות ההורדה, הסיבה לביטול או הודעת שגיאה, שמוצגים כאן גם כן.
איור 28. סטטוס ההרצה של הבדיקה.
המצבים של הרצת הבדיקה הם:
- בהמתנה – מתבצעת הורדה של המשאבים הנדרשים.
- בהמתנה בתור – הבדיקה מוכנה להפעלה כשמכשיר הופך לזמין.
- פועלת – הבדיקה מתבצעת במכשיר שהוקצה.
- הסתיימה – הבדיקה הושלמה ודיווחת על התוצאות.
- בוטלה – המשתמש ביטל את הבדיקה או שתם הזמן הקצוב לתפוגה במהלך הניסיון למצוא מכשירים זמינים.
- שגיאה – אירעה שגיאה שמנעה את הרצת הבדיקה.
ביטול הרצת בדיקה
אם הרצת הבדיקה לא הסתיימה, אפשר לבטל אותה בלחיצה על ביטול. לאחר מכן לוחצים על כן בתיבת הדו-שיח לאישור. גם הפעלות בדיקה יבוטלו באופן אוטומטי אם הם יישארו במצב בתור למשך זמן ארוך יותר השדה queue_timeout_seconds. ביטול הרצת בדיקה במצב פועל עשויות לחלוף כמה דקות עד שההגדרה תיכנס לתוקף.
איור 29. ביטול הרצת בדיקה.
בדיקת תוצאות ההרצה
בסיום הרצת הבדיקה, התוצאות נאספות ומוצגות. אפשר
להציג פרטים נוספים על ידי לחיצה על החץ בכל הפעלה. לוחצים על הצגת הפלט
קבצים כדי לראות את פריטי המידע שנוצרו בתהליך הפיתוח (Artifact) שנאספו, כמו test_result.xml
ו-
test_result_failures.html
איור 30. בדיקת תוצאות ההרצה.
בכרטיסייה 'יומנים' אפשר לצפות ביומנים של מארחים ו-טרי הם.
איור 31. הכרטיסייה 'יומנים'.
התוצאות של מודולים נפרדים נמצאות בכרטיסייה 'תוצאות בדיקה'.
איור 32. כרטיסיית 'תוצאות בדיקה'.
כדי להוריד את הקבצים שמשמשים כמשאבי בדיקה, לוחצים על Open (פתיחה) בקטע בכרטיסייה 'משאבים לבדיקה'.
איור 33. בכרטיסייה 'משאבים לבדיקה'.
כדי לראות את הפרטים של הרצת הבדיקה, למשל create_time, עוברים לכרטיסייה 'הגדרה'.
איור 34. הכרטיסייה 'הגדרה'.
תכונות מתקדמות
ניהול קובצי תצורה
ב-OmniLab ATS משתמשים בקובצי תצורה שנכתבו ב-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
כשמגדירים מכונת OmniLab ATS, אתם יכולים לשתף את ההגדרות עם של משתמשים אחרים על ידי ייצוא הקובץ כקובץ. כדי לעשות זאת, נכנסים לדף 'הגדרות' לוחצים על ייצוא בפינה השמאלית העליונה.
איור 35. ניהול קובצי תצורה.
אחרי שמורידים את קובץ התצורה, משתפים אותו עם משתמשים אחרים. הם יכולים להוסיף את קובץ התצורה למכונת OmniLab ATS שלהם על ידי לחיצה ייבוא ובחירת קובץ התצורה.
יצירת פעולה חדשה במכשיר
פעולות במכשיר משמשות לאוטומציה של תהליך הגדרת המכשיר. הפעולות הן הסקריפטים שרצים בכל מכשיר שבו הבדיקה רצה לפני כל הרצת בדיקה, כולל לפני ניסיונות חוזרים. כדי להציג רשימה של הפעולות הזמינות במכשיר, עוברים אל הדף 'הגדרות' ולוחצים על הכרטיסייה 'פעולות במכשיר'. מתבצעות כמה פעולות במכשיר שכבר הוגדר, כגון אתחול והבהוב.
איור 36. הכרטיסייה 'פעולות במכשיר'.
הוספת פעולה חדשה במכשיר
לוחצים על פעולה חדשה במכשיר.
איור 37. לחצן פעולה חדש במכשיר.
מזינים שם ותיאור.
איור 38. שם הפעולה במכשיר.
לוחצים על Add Target Preparer (הוספת טירגוט).
מזינים את היעד של Trade Federation השם המלא של הכיתה של המכין, לדוגמה,
com.android.tradefed.targetprep.RunHostCommandTargetPreparer
.איור 39. הוספת מכין יעד.
רשימה של מתכוננים זמינים לטירגוט מופיעה com.android.tradefed.targetprep הפניה.
איור 40. רשימת מתכוננים לטירגוט.
צריך להוסיף אפשרויות לשימוש עם מכין היעד. כדי לראות את האפשרויות הזמינות, לסמן targetprep לקוד המקור לכל מכין יעד ב-AOSP:
איור 41. דוגמה לאפשרות פעולה.
כדי להוסיף אפשרות, לוחצים על Add Target Preparer (הוספת אפשרות לטירגוט) ומזינים את הפקודה הערכים הנדרשים.
איור 42. דוגמה לפקודת פעולה.
להגדיר את משאבי הבדיקה שנחוצים לביצוע הפעולה במכשיר, למשל, לבנות תמונות להבהוב. כדי להוסיף הגדרת משאב, לוחצים על מוסיפים משאב לבדיקה וממלאים את שדות החובה. אם ידוע לך לאן הקבצים שלך נמצאים, אפשר לציין כתובת URL להורדה המוגדרת כברירת מחדל בלחיצה על עיון. אם המכינים היעד מקבלים את הספרייה כמשאב לבדיקה, בוחרים באפשרות ביטול דחיסה. לאחר מכן מציינים את ספריית היעד היחסית בספריית העבודה הזמנית ובשמות הקבצים שיהיו דחוסים. אם לא נותנים שמות קבצים, כל הקבצים יפורקים מ- מקור המידע לבדיקה.
איור 43. משאבים לבדיקת פעולות.
לוחצים על עדכון.
איור 44. פעולה – שמירת השינויים.
ניהול הבדיקות
עריכת בדיקה
כדי לערוך בדיקה שנשמרה, עוברים לדף 'בדיקות' ולוחצים על עריכה בשורה של הבדיקה שרוצים לשנות. אחרי שמשנים את הגדרות הבדיקה, לוחצים על עדכון.
איור 45. עריכת בדיקה.
הוספת בדיקה חדשה
כדי להוסיף בדיקה חדשה, עוברים לדף 'בדיקות' ולוחצים על יצירת בדיקה חדשה. אישור את המידע המתאים ולוחצים על יצירה.
איור 46. יצירת בדיקה.
איור 47. העתקת בדיקה.
ייצוא הגדרות המארח
אחרי שמגדירים מארח, אפשר לייצא את ההגדרות של המארח לקובץ. אפשר להעלות את הקובץ הזה למארחים אחרים כדי להעתיק את ההגדרות שנשמרו.
כדי לייצא הגדרות של מארח, צריך לעבור לדף 'הגדרות' וללחוץ על ייצוא בפינה הימנית העליונה.
איור 48. מתבצע ייצוא של הגדרות המארח.
כדי לייבא קובץ תצורה של מארח, עוברים לדף Settings (הגדרות) ולוחצים ייבוא בפינה השמאלית העליונה.
איור 49. ייבוא הגדרות מארח.
שימוש בספריות ובקבצים מקומיים
החל מגרסה R11, קבצים בספרייה $HOME/.ats_storage
נגיש באופן אוטומטי ב-OmniLab ATS. להעתיק או להעביר קובץ למקום הזה
שלה, אפשר לבחור אותו בכרטיסייה קובץ מקומי כשמתזמנים קובץ
הרצת בדיקה.
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
.כדי להפעיל את רכיבי ה-Labs, משתמשים בפקודה הבאה:
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 כדי להתאים לקובץ ZIP של התוצאות. |
SYSTEM_AVAILABLE_SPACE | הפעלת פעולות על סמך המקום הפנוי במערכת. | threshold : הפעלת פעולה כשהשטח הזמין יורד מתחת לסף, לדוגמה, 200 (B), 200KB , 200MB , 200GB , 2TB . |
איור 53. הוספת מדיניות חדשה לניקוי קבצים.
הגדרות אישיות
הגדרה משלבת מדיניות אחת או יותר עם ספריות ספציפיות. הקבצים ו מהספריות שצוינו מעובדות על סמך למדיניות מוגדרת. כללי המדיניות חלים לפי הסדר שבו הם מופיעים בהגדרה.
כל ספריות היעד חייבות להיות בספרייה /data
. אם
ההגדרה מציינת שספריית היעד היא logs
, והיא מפורשת
/data/logs
.
איור 54. עורכים את ההגדרות של הכלי לניקוי קבצים.
איפוס
לחיצה על איפוס ההגדרות תחזיר את התצורה של הכלי לניקוי קבצים מצב ברירת מחדל. פעולה זו תמחק את כל הפריטים המותאמים אישית.
איור 55. איפוס ההגדרות של הכלי לניקוי קבצים.
תמיכה
דוחות איתור באגים
התרומה שלך ל-OmniLab ATS עוזרת לשפר את הפיתוח של הכלי, וגם נשמח לקבל מכם משוב! לצפייה נתוני הגרסה של OmniLab ATS לפרטים על המהדורה האחרונה. כדי לדווח על באגים או להציע הצעות: לדווח על באג. השותפים צריכים לדווח על באגים או הצעות באמצעות ערוצי השותפים שלהם.