הרצת בדיקות CTS-V

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

דרישות

לפני שמריצים את CTS Verifier, חשוב לוודא שיש לכם את הציוד הבא:

  • מכשיר Android שעבר בהצלחה את בדיקת התאימות של Android API באמצעות CTS. זהו המכשיר שנבדק (DUT).
  • מחשב Linux עם יציאה שתואמת ל-USB 2.0. כל החיבורים ל-DUT עוברים דרך היציאה הזו.
  • מכשיר Android שני עם Bluetooth,‏ Wi-Fi Direct,‏ Wi-Fi Aware,‏ UWB (אם ה-DUT תומך ב-UWB) ו-NFC HCE (אמולציה של כרטיס מבוסס מארח) תואמים.
  • נתב Wi-Fi שמוגדר עם שם וסיסמה של נקודת גישה. לנתב צריכה להיות אפשרות להתנתק מהאינטרנט, אבל לא להיות כבוי.

חשוב גם להכין את החצובות, את מחזיקי המכשירים ואת המרחקים שנמדדו מראש שנדרשים לבדיקות המרחק (הקרבה) למדידה של UWB,‏ Wi-Fi NAN ו-Bluetooth RSSI. לפרטים נוספים, אפשר לעיין במאמר בנושא כיול של נוכחות.

דרישות UICC לבדיקות NFC

ב-CTS Verifier יש את תרחישי הבדיקה הבאים של NFC:

  • Field-off (שימוש בנתוני עסקאות מ-0x54)
  • ביטול הבחירה (שימוש בנתוני עסקאות מ-0x52)
  • פקודת HCI ‏ (0025000000) (משתמשת בנתוני עסקאות מ-0x02)

בדיקות של אירועי עסקאות דורשות שני מכשירים, שאחד מהם צריך להיות עם SecureElement UICC עם כללי הגישה הבאים:

  • גיבוב של קובץ ה-APK של CtsVerifier: ‏ 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
  • מזהה אפליקציה מורשה (AID) לגישה לאירועי NFC: ‏ 0xA000000476416E64726F696443545341

בצד האמולטור, אנחנו מצפים שאירוע העסקה ידחוף את הפעילות המתאימה לחזית.

הגדרה

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

  1. פותחים את Settings (הגדרות).
  2. עוברים אל מערכת > תנועות > ניווט במערכת.
  3. אם יש אפשרות, בוחרים במצב ניווט שמבוסס על לחצנים, ועדיף במצב של שלושה לחצנים.

כדי להגדיר את סביבת הבדיקה של CTS Verifier:

  1. במחשב עם Linux:

    • לפני שמתקינים את CTS Verifier, מריצים את הפקודה הבאה כדי לאפשר גישה לממשקי API שאינם SDK.

      adb shell settings put global hidden_api_policy 1
      
    • מתקינים את Android Studio.

    • מורידים את קובץ ה-APK של CTS Verifier לגרסת Android שרוצים לבדוק.

  2. מחברים את ה-DUT למחשב Linux.

  3. מטרמינל במחשב עם Linux, מתקינים את CtsVerifier.apk ב-DUT.

    adb install -r -g CtsVerifier.apk
    
  4. ב-Android מגרסה 10 ואילך, מריצים את הפקודה הבאה כדי לתת לאפליקציה הרשאה ליצור את הדוח.

    adb shell appops set com.android.cts.verifier android:read_device_identifiers allow
    
  5. ב-Android בגרסה 11 ואילך, מריצים את הפקודה הבאה כדי לאפשר שמירת דוחות בספרייה שהוגדרה בעצמכם בספרייה החיצונית ברמה העליונה של המכשיר.

    adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
    
  6. ב-Android מגרסה 13 ואילך, מריצים את הפקודה הבאה כדי לאפשר גישה ל-API של בדיקות עבור CTS Verifier.

    adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
    
  7. ב-Android מגרסה 14 ואילך, מריצים את הפקודה הבאה כדי לתת לאפליקציה הרשאה להפעיל את המסך.

    adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0
    
  8. מוודאים שהתאריך והשעה במערכת של ה-DUT מוגדרים בצורה נכונה.

הפעלת CTS Verifier

מפעילים את אפליקציית CTS Verifier בהקשה על הסמל שלה במכשיר הנבדק.

הסמל של CTS Verifier במרכז האפליקציות

איור 1. הסמל של CTS Verifier

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

תפריט הבדיקות של CTS Verifier

איור 2. תפריט הבדיקות של CTS Verifier

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

כלי לאימות איכות הווידאו בסטרימינג

איור 3. מסך בדיקה עם רכיבי בדיקה נפוצים מודגשים

  • עבר (✓). מקישים אם ה-DUT עומד בדרישות הבדיקה לפי ההוראות שבקטע 'מידע'.
  • מידע (?). מקישים כדי להציג את הוראות המבחן. מופיע גם באופן אוטומטי בפעם הראשונה שפותחים בדיקה.
  • נכשל (!). מקישים אם ה-DUT לא עומד בדרישות הבדיקה לפי ההוראות שבקטע 'מידע'.

חלק מהבדיקות, כמו בדיקת מצב אביזר USB ובדיקת כיול המצלמה, דורשות הגדרות והוראות נוספות, כפי שמפורט בקטעים הבאים.

בדיקת מצב אביזר USB בגרסה 8.0 ואילך

בדיקת אביזר USB ב-CTS Verifier

איור 4. הליך בדיקה של אביזרי USB בגרסה 8.0 ומעלה

בדיקת אביזר USB ב-CTS Verifier

איור 5. בדיקת מצב אביזר USB בגרסה 8.0 ומעלה

בדיקת מצב אביזר USB בגרסה 7.x ומטה

כדי לבצע את הבדיקה של אביזר ה-USB, צריך מחשב Linux כדי להריץ את תוכנת המחשב (המארח) של ה-USB.

  1. מחברים את ה-DUT למחשב Linux.
  2. במחשב, מריצים את התוכנה cts-usb-accessory מחבילת CTS Verifier:

    ./cts-usb-accessory
  3. מחכים להודעה קופצת שמופיעה ב-DUT ואז בוחרים באפשרות אישור.
    בדיקת אביזר USB ב-CTS Verifier

    איור 6. בדיקת אביזר USB

  4. עוברים אל USB Accessory Test (בדיקת אביזר USB) באפליקציית CTS Verifier במכשיר הנבדק.

  5. במחשב, בודקים את הפלט מהמסוף. פלט לדוגמה:

    CTS USB Accessory Tester
    Found possible Android device (413c:2106) - attempting to switch to accessory
    mode...
    Failed to read protocol versionfigure3
    Found Android device in accessory mode (18d1:2d01)...
    [RECV] Message from Android device #0
    [SENT] Message from Android accessory #0
    [RECV] Message from Android device #1
    [SENT] Message from Android accessory #1
    [RECV] Message from Android device #2
    [SENT] Message from Android accessory #2
    [RECV] Message from Android device #3
    [SENT] Message from Android accessory #3
    [RECV] Message from Android device #4
    [SENT] Message from Android accessory #4
    [RECV] Message from Android device #5
    [SENT] Message from Android accessory #5
    [RECV] Message from Android device #6
    [SENT] Message from Android accessory #6
    [RECV] Message from Android device #7
    [SENT] Message from Android accessory #7
    [RECV] Message from Android device #8
    [SENT] Message from Android accessory #8
    [RECV] Message from Android device #9
    [SENT] Message from Android accessory #9
    [RECV] Message from Android device #10
    [SENT] Message from Android accessory #10
    

כיול של שדה הראייה של המצלמה

אפשר להשתמש בהליך הכיול של שדה הראייה כדי לקבוע במהירות את שדה הראייה של המכשיר ברמת דיוק בינונית.

  1. מגדירים את סביבת הבדיקה:

    1. מדפיסים את קובץ היעד calibration-pattern.pdf על נייר בגודל 11x17 אינץ' או בגודל A3.
    2. מצמידים את הדוגמה המודפסת למשטח קשיח.
    3. ממקמים את מכשיר המצלמה ואת יעד ההדפסה כמו שמוצג בתרשים הבא.
      יעד המצלמה להדפסה

      איור 7. יעד המצלמה להדפסה

  2. מגדירים את רוחב היעד:

    1. מודדים את המרחק (בסנטימטרים) בין הקווים המלאים בתבנית המטרה כדי לפצות על אי דיוקים בהדפסה (כ-38 ס"מ).
    2. מפעילים את אפליקציית הכיול.
    3. לוחצים על לחצן ההגדרה ובוחרים באפשרות מרחק הסמן.
    4. מודדים את המרחק לדוגמת המטרה ומזינים אותו (כ-100 ס"מ).
    5. לוחצים על לחצן החזרה כדי לחזור לתצוגה המקדימה של הכיול.
  3. מוודאים שהמכשיר והיעד ממוקמים כמו שמוצג באיור, ושהמרחקים הנכונים הוזנו בתיבת הדו-שיח של ההגדרה. בתצוגה המקדימה מוצגת התמונה עם קו אנכי שמוצג מעליה. הקו הזה צריך להיות מיושר עם קו האמצע של דוגמת המטרה. אפשר להשתמש ברשת השקופה עם הקווים האנכיים האחרים כדי לוודא שהציר האופטי ניצב למטרה.

  4. מריצים את בדיקת הכיול:

    1. בוחרים את רזולוציית התמונה (באמצעות הכלי לבחירה בפינה הימנית התחתונה), ואז מקישים על המסך כדי לצלם תמונה. הבדיקה עוברת למצב כיול והתמונה מוצגת עם שתי שורות אנכיות שמוצגות על התמונה.
    2. קביעת רמת הדיוק:
      • אם הקווים חופפים לקווים האנכיים בתבנית המטרה בטווח של כמה סנטימטרים, שדה הראייה שדווח ברזולוציה שנבחרה מדויק.
      • אם הקווים לא חופפים, שדה הראייה שדווח לא מדויק. כדי לתקן את זה, משנים את המיקום של פס ההזזה בתחתית המסך עד שהשכבה העליונה תהיה מיושרת עם דפוס היעד בצורה הכי מדויקת שאפשר. כששכבת-העל ותמונת דוגמת היעד מיושרות, שדה הראייה שמוצג הוא קירוב קרוב לערך הנכון. שדה הראייה שדווח צריך להיות בטווח של +/-2 מעלות מערך הכיול.
    3. לוחצים על לחצן החזרה וחוזרים על בדיקת הכיול לכל רזולוציות התמונה שנתמכות על ידי ה-DUT.

הרצת CTS Verifier למצבים חלופיים

החל מגרסאות CTS 10 R6 ו-CTS 11 R2, כלי CTS Verifier תומך בבדיקות שנדרשות למכשירים עם מצבים חלופיים או למכשירים עם יותר ממצב מסך אחד.

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

מתג דו-מצבי של CTS-V

איור 8. החלפת מצב למתג CTS Verifier

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

<Test result="fail" name="com.android.cts.verifier.deskclock.DeskClockTestsActivity[folded]">
  <RunHistory subtest="CREATE_ALARM[folded]">
    <Run start="1594176663973" end="1594176665841" isAutomated="false" />
  </RunHistory>
</Test>

ייצוא תוצאות

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

  1. כדי לשמור את תוצאות הבדיקה, מקישים על סמל השמירה (דיסק) בחלק העליון של רשימת קטגוריות הבדיקה.

  2. מחכים להודעה בחלון קופץ שבה מוצג נתיב הקובץ של הדוח השמור (לדוגמה, /sdcard/verifierReports/ctsVerifierReport-date-time.zip), ואז רושמים את הנתיב.

  3. מחברים את ה-DUT למחשב Linux.

  4. מתוך התקנת Android SDK במחשב עם Linux, מורידים דוחות מהמכשיר המחובר באמצעות adb shell content read או adb pull CTSVerifierReportPath.

    • ב-Android מגרסה ‎7.x ואילך, מורידים את כל הדוחות באמצעות הפקודה הבאה:

      adb pull /sdcard/verifierReports
      
    • ב-Android מגרסה 6.0 ומטה, מורידים את כל הדוחות באמצעות הפקודה הבאה:

      adb pull /mnt/sdcard/ctsVerifierReports/
      
    • ב-Android 10 ואילך, כדי להטמיע Automotive ומכשירים שפועלים כמשתמש משני, מורידים את הדוח האחרון באמצעות הפקודה הבאה:

      adb shell content read --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zip
      

      כדי לראות רשימה של כל הדוחות שזמינים במכשיר המחובר:

      adb shell content query --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports
      

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

      adb shell content read --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip
      
      adb shell content read --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports/ctsVerifierReport-date-time.zip >
      report.zip
      
  5. כדי לנקות את התוצאות של המעבר או הכשל, בוחרים את התוצאות באפליקציית CTS Verifier ובוחרים באפשרות תפריט > ניקוי.