מבצעים אופטימיזציה של ה-CTS

חבילה לבדיקות תאימות (CTS) של Android מספקת מיליוני בדיקות נפרדות. למרות שיש צורך להריץ CTS לעיתים קרובות בשלב פיתוח התוכנה, אפשר לקצר את הזמן שדרוש להרצת הבדיקות האלה.

בדף הזה מתוארות שיטות שאפשר להשתמש בהן כדי לקצר את זמן ביצוע הבדיקה, ואיך לבצע אופטימיזציה של משאבי החומרה בתהליך.

מכשירים עם חלוקה לפלחים

כדי לקצר את מחזור הזמן, מומלץ להריץ את CTS במספר מכשירים (חלוקה למקטעים). במאמר הרצת בדיקות CTS מוסבר איך משתמשים בחלוקה לפלחים.

תחנת בדיקות ל-Android

משתמשים ב-Android Test Station‏ (ATS) כדי להשתמש בממשק משתמש להרצת חבילות בדיקה רגילות של Android. הכלי הזה משמש כממשק אינטרנט ל-Trade Federation‏ (TF), ומאפשר להריץ את ה-CTS עם הגדרה מינימלית בקבוצה של מכשירי בדיקה, וגם לקבוע לוח זמנים להרצה רציפה של בדיקות.

בתחנת הבדיקה של Android יש תמיכה במצב מרובה-מארחים, שבו אפשר להשתמש במארח יחיד של בקר ATS כדי לנהל מכשירים ובדיקות במספר מארחי עובדים של ATS.

הפעלה רציפה של אמולטור

כדי להריץ את CTS באופן רציף במהלך שלב הפיתוח, אפשר להשתמש במכשירים וירטואליים של Android‏ (AVD) כתחליף לחומרה. כך אפשר לזהות מוקדם רגרסיות של כישלונות בבדיקות, וכך לחסוך הרבה מהזמן שנדרש לטיפול ראשוני ולניתוח הגורמים העיקריים. אפשר להשתמש במספר מכונות של הסימולטור כדי לבצע חלוקה לפלחים, ואפשר לתזמן אותן לפעול באופן רציף עם תחנת הבדיקה של Android.

drawElements Quality Program‏ (dEQP)

תוכנית האיכות של drawElements (dEQP) כלולה ב-CTS של Android. התוכנה הזו נקראת CtsDepqTestCases, והיא מתמקדת בכיסוי הבדיקה של הגרפיקה של Android. המודול הזה מייצג כמעט 80% מכל תרחישי הבדיקה ב-Android CTS, ו-6% מזמן הביצוע הכולל.

מאחר שמנהלי הגרפיקה של Android הם חלק מתוכנת הקושחה של Android‏ (BSP), והם לא משתנים הרבה במהלך הפיתוח, אפשר להריץ את המודול הזה באופן אסטרטגי. לדוגמה, אם אתם מריצים את CTS כל שבועיים (או פחות) במהלך פיתוח התוכנה, תוכלו להחריג את המודול הזה לכמה מחזורים על סמך לוח הזמנים לעדכון הקושחה.

אפשרות אחת היא להריץ את CtsDeqpTestCases בנפרד בקבוצה של מכשירים, ואז לשלוח את דוחות CTS. לדוגמה, בשני מארחים שונים.

מארח 1:

cts-tf > run cts --max-log-size 100 --shard-count 6 -o -m CtsDeqpTestCases

מארח 2:

cts-tf > run cts --max-log-size 100 --shard-count 6 -o --exclude-filter CtsDeqpTestCases

תרחישי בדיקה של מדיה

מקרי בדיקת מדיה מאמתים שירותי מולטימדיה כמו אודיו, וידאו ומנהלי התקנים של מולטימדיה. מודולי הבדיקה של המדיה הרב-תחומית הם הגורמים העיקריים לזמן הביצוע של CTS. עיכובים יכולים להתרחש במקרים הבאים:

  • הורדה של קובצי מדיה או הפעלה חוזרת של קובצי מדיה במהלך בחינות.
  • ניסיון חוזר בתרחישים הבדיקה שנכשלו.

Android CTS מכיל את מודולי הבדיקה הבאים:

  • CtsMediaStressTestCases
  • CtsMediaPlayerTestCases
  • CtsMediaAudioTestCases
  • CtsVideoTestCases
  • CtsMediaDecoderTestCases
  • CtsMediaCodecTestCases
  • CtsMediaV2TestCases

כדאי להריץ כמה בדיקות מדיה באופן מקומי או בשרת מקומי. למידע נוסף, ראו הפעלת בדיקות מדיה של CTS באופן מקומי.

מסגרת המולטימדיה והדריברים שלה (מפענחים ומקודדים) הם חלק מקושחת Android‏ (BSP). אפשר להריץ את המודול הזה באופן אסטרטגי ולהחריג את המודולים האלה למשך מספר מחזורים, בהתאם ללוח הזמנים לעדכוני הקושחה.