הפעלת בדיקות אוטומטיות (Android מגרסה 11 ואילך)

יש שתי אפשרויות להרצת בדיקות אוטומטיות של CTS:

  • Trade Federation הוא מסגרת בדיקה ואפליקציה שמאפשרת להריץ בדיקות משורת הפקודה. המסגרת מאפשרת להוסיף הערות לבדיקות באמצעות ההערה @Test, והאפליקציה מוצאת את הבדיקות האלה ומריצה אותן.

  • OmniLab תחנת בדיקות ל-Android היא אפליקציה שמאפשרת להריץ בדיקות בממשק משתמש גרפי.

בדף הזה מוסבר איך להריץ בדיקות אוטומטיות באמצעות Trade Federation. הוראות להפעלת בדיקות באמצעות OmniLab Android Test Harness מופיעות במאמר OmniLab Android Test Station.

הרצת כל הבדיקות האוטומטיות של CTS

‫Trade Federation מכיל את מסוף CTS, ממשק שורת פקודה להרצת בדיקות. כדי להריץ את כל חבילת מקרים לבדיקה האוטומטית של CTS:

  1. חשוב לוודא שפעלתם לפי ההוראות שבמאמר הגדרת בדיקות אוטומטיות של CTS.
  2. בתחנת העבודה של הבדיקה, מפעילים את מסוף CTS על ידי הרצת הסקריפט cts-tradefed מהתיקייה שבה בוצעה פריסה של חבילת CTS:

    ./android-cts/tools/cts-tradefed
    

    במסוף CTS מוצג סמן שמאפשר להקליד פקודות CTS (cts-tradefed >).

  3. תוכנית הבדיקה cts מכילה את כל הבדיקות האוטומטיות של CTS. מריצים את הפקודה הבאה כדי להפעיל את תוכנית הבדיקה cts:

    run cts
    

    בדיקות ה-CTS האוטומטיות מופעלות. שימו לב לנקודות הבאות:

    • ‫Android מגרסה 13 ואילך תומך בבדיקה של כמה מכשירים. הבדיקות האלה מופעלות באופן אוטומטי רק כשמשתמשים ב-sharding. מידע נוסף על פיצול (sharding) זמין במאמר שיפור זמן ביצוע הבדיקה. אם רוצים להריץ את הבדיקות האלה באופן ידני, אפשר לעיין במאמר בנושא הרצת בדיקות במספר מכשירים.

    • בכל פעם שמריצים את CTS, מקישים על Ctrl+c כדי לעצור את מסוף CTS הקיים ואז מריצים מחדש את מסוף CTS.

    • אי אפשר להריץ כמה גרסאות של CTS במארח יחיד, כי כל אחת מהן נפתחת עם שרת קיים של קוד מיקום פתוח (OLC).

  4. מעיינים בתוצאות הבדיקה. מידע נוסף זמין במאמר בנושא פירוש תוצאות CTS.

  5. אם זו הפעלת הבדיקה הראשונה שלכם, יכול להיות שיהיו בדיקות שייכשלו בגלל בעיות שלא בשליטתכם. לדוגמה, יכול להיות שהחיבור לרשת איטי או שאות ה-GPS חלש. מריצים מחדש (מנסים שוב) את הבדיקות עד שכל מודולי הבדיקה מסתיימים ומספרי הכשלים בבדיקה זהים בין שני ניסיונות ההרצה האחרונים:

    run retry --retry session_number`
    
  6. אם הבדיקות נכשלות באופן עקבי בניסיונות חוזרים, כדאי להתמקד בניפוי הבאגים של הבדיקות שנכשלו. מידע על פתרון בעיות בתוצאות הבדיקה זמין במאמרים סיווג של כשלים בבדיקות ופתרון בעיות בבדיקות CTS.

הרצת CTS למכשירים עם כמה מסכים

אם במכשיר שלכם מותקנת Android מגרסה 11 או 12, ויש לו כמה מסכים, אתם צריכים להריץ את תוכנית הבדיקה cts-foldable בנפרד:

run cts-foldable

למקרים של בדיקה שעברו או נכשלו במצב מסך חלופי מתווסף הערך מ-display_mode, לדוגמה, testcase1[display_mode=0].

הפעלת בדיקות בכמה מכשירים (Android מגרסה 15 ומטה)

מריצים את הפקודה הבאה כדי להפעיל את תוכנית הבדיקה cts-multidevice:

run cts-multidevice

הפעלת תוכניות בדיקה נפרדות

במקום להריץ את כל תוכניות הבדיקה בבת אחת, אפשר להריץ תוכניות בדיקה בודדות. האפשרות הזו שימושית לחיסכון בזמן ולהתמקדות בקבוצה ספציפית של בדיקות. כדי להריץ תוכנית בדיקה ספציפית:

  1. מריצים את הפקודה list modules כדי לזהות את השם של תוכנית הבדיקה שרוצים להריץ.

  2. מריצים את תוכנית הבדיקה:

    run cts --plan test_module_or_plan_name
    

שיפור משך ביצוע הבדיקה

אם רוצים לקצר את זמן ההרצה של הבדיקות, אפשר לפצל את הבדיקות בין כמה מכשירים. כדי להשתמש ב-Sharding, המארח צריך לחבר לפחות שני מכשירים, אבל מומלץ לחבר שישה מכשירים או יותר כדי להשיג יעילות.

כדי לפצל בדיקות ב-Android מגרסה 11 ואילך, מריצים את הפקודה:

run cts --shard-count number_of_shards

בנוסף, לפני שמריצים את הבדיקות לצורך אימות, אפשר להשתמש בפקודה CTS run cts-dev כדי לקצר את זמן הביצוע של הבדיקות. הפקודה הזו מדלגת על התנאים המוקדמים, על איסוף פרטי המכשיר ועל כל בודקי סטטוס המערכת. בנוסף, הבדיקות מופעלות רק על ABI אחד.