מסוף הפקודה של CTS v2

שימוש במסוף CTS v2

ב-Android 7.0 ואילך, משתמשים ב-CTS v2.

בחירת תוכניות

תוכניות הבדיקה הזמינות כוללות את האפשרויות הבאות:

  • cts – הפעלת CTS מהתקנה קיימת של CTS.
  • cts-camera – הפעלת CTS-camera מהתקנה קיימת של CTS.
  • cts-java – הרצת בדיקות Core Java מהתקנה קיימת של CTS.
  • cts-pdk – הרצת בדיקות שיעזרו לכם לאמת build של PDK fusion.
  • everything – הגדרה משותפת לחבילות תאימות.

הגדרות נוספות שזמינות כוללות את:

  • basic-reporters – הגדרה עם דיווחים בסיסיים של CTS.
  • collect-tests-only – הפעלת CTS מהתקנה קיימת של CTS.
  • common-compatibility-config – הגדרה משותפת לחבילות תאימות.
  • cts-filtered-sample – הגדרה נפוצה לחבילות תאימות.
  • cts-known-failures – הגדרה עם כשלים ידועים ב-CTS.
  • cts-preconditions – הגדרות של תנאי מוקדם ל-CTS.
  • host – הרצת בדיקה אחת מבוססת-מארח במכשיר קיים.
  • instrument – הרצת בדיקת מכשיר אחת של Android במכשיר קיים.
  • native-benchmark – הפעלת בדיקת עומס מקורית במכשיר קיים.
  • native-stress – הרצת בדיקת עומס מקורית במכשיר קיים.
  • טעינה מחדש – בדיקה מזויפת שממתינה למכשירים שהסוללה שלהם כמעט ריקה ומחזיקה אותם לטעינה.
  • testdef – הפעלת בדיקות שמפורטות בקובצי test_def.xml במכשיר קיים.
  • util/wifi – הגדרת השירות להגדרת Wi-Fi במכשיר.
  • util/wipe – איפוס נתוני המשתמש במכשיר.

אפשר להריץ את כל התוכניות וההגדרות האלה באמצעות הפקודה run cts.

הפניה לפקודות במסוף של CTS v2

בטבלה הזו מפורט סיכום של פקודות מסוף CTS v2 לשימושים שונים.

מארח תיאור
help הצגת סיכום של הפקודות הנפוצות ביותר
help all הצגת הרשימה המלאה של הפקודות הזמינות
version הצגת הגרסה.
exit יציאה מסודרת ממסוף CTS. מסוף ה-CLI נסגר כשכל הבדיקות שרצות כרגע מסתיימות.
extdir

קובץ ההורדות המכווץ decompresses ל-extdir. כדי להסיר את הפלט המוגדל, משתמשים באפשרות -q:

unzip -q android-cts-9.0_r15-linux_x86-arm.zip -d extdir

אם רוצים לבצע את הפעולה בספרייה הנוכחית, לא משתמשים באפשרות -d, אלא פשוט מריצים את הפקודה:

unzip -q android-cts-9.0_r15-linux_x86-arm.zip

הרצה תיאור
run cts

ב-Android 10, מריצים יחד את תוכנית ברירת המחדל של CTS ו-CTS-Instant (כלומר, את ההפעלה המלאה של CTS). ב-Android מגרסה 9 ומטה, מריצים רק את תוכנית ברירת המחדל של CTS. אפשר להשתמש באפשרות המקיפה הזו (כולל תנאים מוקדמים) לאימות המכשיר. cts.xml – הקבצים שכלולים ב-CTS.

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

אם לא מחובר מכשיר, המחשב (או המארח) של CTS לשולחן העבודה ימתין לחיבור מכשיר לפני שהוא יתחיל את הבדיקות. אם יש יותר ממכשיר אחד שמחובר, מארח ה-CTS יבחר מכשיר באופן אוטומטי.

run cts-instant

ב-Android 9, מריצים את תוכנית ברירת המחדל CTS-Instant.

run cts --module-parameter INSTANT_APP

ב-Android 10, מריצים את תוכנית ברירת המחדל CTS-Instant.

run cts --module-parameter INSTANT_APP --module/-m test_module_name

ב-Android 10, מריצים את המודול או המודולים של בדיקת CTS-Instant שצוינו.

run retry

רק למכשירי Android מגרסה 9 ואילך. מנסים שוב את כל הבדיקות שנכשלו או לא בוצעו מהסשנים הקודמים. לדוגמה, run retry --retry -s או run retry --retry --shard-count עם חלוקה (sharding) של TF.

לא ניתן להשתמש ב-run cts --retry במכשירי Android מגרסה 9 ואילך.

run cts-sim

למכשירי Android מגרסה 11 ואילך. הרצת קבוצת המשנה של הבדיקות במכשיר עם כרטיס SIM.

--device-token

בגרסאות Android 8.1 ומטה. מציין שלמכשיר נתון יש את הטוקן הנתון. לדוגמה, --device-token 1a2b3c4d:sim-card.

--enable-token-sharding

ב-Android מגרסה 10 ואילך בלבד. התאמה אוטומטית של הבדיקה שדורשת את סוג ה-SIM המתאים. אין צורך לספק מספר סידורי של מכשיר כדי להריץ תרחישי בדיקה שקשורים ל-SIM. כרטיסי SIM נתמכים: SIM_CARD,‏ UICC_SIM_CARD ו-SECURE_ELEMENT_SIM_CARD.

run cts-dev

מריצים את תוכנית ברירת המחדל של CTS (כלומר, ההפעלה המלאה של CTS) אבל מדלגים על התנאים המוקדמים כדי לחסוך זמן ריצה לפיתוח איטרטיבי של בדיקה חדשה. כך אפשר לעקוף את האימות וההגדרה של ההגדרות של המכשיר, כמו דחיפת קבצי מדיה או בדיקה של חיבור Wi-Fi, כפי שנעשה כשמשתמשים באפשרות --skip-preconditions. הפקודה הזו גם מדלגת על איסוף פרטי המכשיר ועל כל בודקי סטטוס המערכת. בנוסף, הבדיקה מתבצעת רק ב-ABI אחד. לאימות המכשיר, כדאי להימנע מהאופטימיזציה הזו ולכלול את כל התנאים המוקדמים והבדיקות. החרגות מפורטות בקובץ cts-dev.xml.

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

אם לא מחובר מכשיר, המחשב (או המארח) של CTS לשולחן העבודה ימתין לחיבור מכשיר לפני שהוא יתחיל את הבדיקות. אם יש יותר ממכשיר אחד שמחובר, מארח ה-CTS יבחר מכשיר באופן אוטומטי.

--subplan subplan_name מריצים את תוכנית המשנה שצוינה.
--module/-m test_module_name --test/-t test_name  מריצים את המודול ואת הבדיקה שצוינו. לדוגמה, הפקודה run cts -m Gesture --test android.gesture.cts.GestureTest#testGetStrokes מפעילה את החבילה, הכיתה או הבדיקה הספציפיים.
--retry ניסיון חוזר בכל הבדיקות שנכשלו או לא בוצעו מהסשנים הקודמים. משתמשים ב-list results כדי לקבל את מזהה הסשן.
--retry-type NOT_EXECUTED ניסיון חוזר רק בבדיקות שלא בוצעו מהסשנים הקודמים. משתמשים ב-list results כדי לקבל את מזהה הסשן.
--shards number_of_shards ב-Android מגרסה 8.1 ומטה. חלוקה של הרצה של CTS למספר נתחים עצמאיים, כדי להריץ אותה במקביל במספר מכשירים.
--shard-count number_of_shards ב-Android מגרסה 9. חלוקת הרצה של CTS למספר נתחים עצמאיים, כדי להריץ אותה במספר מכשירים בו-זמנית.
--serial/-s deviceID מריצים את CTS במכשיר הספציפי.
--include-filter "test_module_name test_name" מריצים עם המודולים שצוינו, או עם חבילות, כיתות ומקרי בדיקה. לדוגמה, הערך run cts --include-filter "CtsCalendarcommon2TestCases android.calendarcommon2.cts.Calendarcommon2Test#testStaticLinking" כולל את המודול שצוין.

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

--exclude-filter "test_module_name test_name" החרגה של המודולים, חבילות הבדיקות, הכיתות ומקרי הבדיקה שצוינו מההרצה. לדוגמה, הערך run cts --exclude-filter "CtsCalendarcommon2Test android.calendarcommon2.cts.Calendarcommon2Test#testStaticLinking" מחריג את המודול שצוין.
--log-level-display/-l log_level מריצים עם רמת היומן המינימלית שצוינה, מוצגת ל-STDOUT. ערכים חוקיים: [VERBOSE, DEBUG, INFO, WARN, ERROR, ASSERT].
--abi abi_name איך מאלצים את הבדיקה לפעול ב-ABI הנתון, 32 או 64. כברירת מחדל, הבדיקה של CTS מתבצעת פעם אחת לכל ABI שתומך במכשיר.
--logcat-on-failure,
--bugreport-on-failure,
--screenshoot-on-failure
נותנים יותר שקיפות לגבי כשלים ויכולים לעזור באבחון.
--device-token מציין שלמכשיר מסוים יש את הטוקן הנתון, למשל --device-token 1a2b3c4d:sim-card.
--skip-device-info דילוג על איסוף המידע על המכשיר.
--skip-preconditions דילוג על תנאים מוקדמים כדי לחסוך זמן ריצה בפיתוח איטרטיבי של בדיקה חדשה. כך אפשר לעקוף את האימות וההגדרה של הגדרות המכשיר, כמו דחיפת קבצי מדיה או בדיקה של חיבור Wi-Fi.
רשימה תיאור
list modules הצגת רשימה של כל המודולים הזמינים לבדיקה במאגר.
list plans או list configs הצגת רשימה של כל תוכניות הבדיקה (הגדרות) הזמינות במאגר.
list subplans הצגת רשימה של כל תוכניות המשנה הזמינות במאגר.
list invocations הצגת רשימה של פקודות run שפועלות כרגע במכשירים.
list commands הצגת רשימה של כל פקודות run שנמצאות כרגע בתור וממתינות להקצאה למכשירים.
list results הצגת רשימה של תוצאות CTS שמאוחסנות כרגע במאגר.
list devices הצגת רשימה של המכשירים שמחוברים כרגע והסטטוס שלהם.

מכשירים זמינים הם מכשירים תקינים שאינם בשימוש וזמינים להרצת בדיקות.

מכשירים לא זמינים הם מכשירים שגלויים דרך adb, אבל לא מגיבים לפקודות adb ולא יוקצו לבדיקות.

מכשירים שמוקצים הם מכשירים שבהם מתבצעות כרגע בדיקות.

Dump תיאור
dump logs יצירת גרסת dump של יומני tradefed לכל ההפעלות שפועלות.
הוספה תיאור
add subplan --name/-n subplan_name
--result-type
[passed | failed | not_executed]
[--session session_id]
יצירת תוכנית משנה שמבוססת על סשן קודם. האפשרות הזו יוצרת תוכנית משנה שאפשר להשתמש בה כדי להריץ קבוצת משנה של בדיקות.

האפשרות היחידה שנדרשת היא --session. אחרים הם אופציונליים, אבל אם הם כלולים, צריך לציין אחרים ערך. אפשר לחזור על האפשרות --result-type. לדוגמה, הערך add subplan --session 0 --result-type passed --result-type failed תקף.