Compatibility Test Suite (CTS) היא חבילת מקרים לבדיקה וכלים בחינם ברמה מסחרית, שמשמשים כדי לוודא שהמכשירים שלכם תואמים ל-Android. הכוונה היא לשלב את CTS בתהליך העבודה היומיומי, למשל באמצעות מערכת build רציפה. מריצים את CTS במחשב שולחני ומבצעים בדיקות ישירות במכשירים שמחוברים אליו או באמולטור. סקירה כללית של תוכנית התאימות של Android
איור 1. בדיקות אוטומטיות של CTS.
איור 1 מציג את התהליך של הרצת בדיקות אוטומטיות ב-CTS:
- מורידים ומתקינים את CTS. בשלב הזה צריך גם להגדיר את סביבת הבדיקה, את תחנת העבודה לבדיקה ואת המכשיר שבודקים או את המכשיר שנבדק (DUT).
- מריצים בדיקות אוטומטיות של CTS.
- שומרים את התוצאות ובודקים אותן.
- לפתור את הבעיות ולהריץ מחדש את הבדיקות.
מומלץ להשתמש ב-CTS כדי לגלות בעיות תאימות בשלב מוקדם, וכדי לוודא שההטמעות של Android יישארו תואמות לאורך תהליך הפיתוח.
רכיבי CTS
ה-CTS מכיל את הרכיבים העיקריים הבאים:
- Trade Federation
- מסגרת בדיקה מאפשרת לבצע בדיקות באופן אוטומטי.
- בדיקות אוטומטיות של CTS
- בדיקות שמשתמשות במסגרת Trade Federation ואפשר להריץ אותן באמצעות Trade Federation test harness.
- בדיקות CTS Verifier (CTS-V)
- בדיקות שצריך להריץ באופן ידני.
- אפליקציית CTS Verifier (CTS-V)
- אפליקציה שמשמשת להרצת בדיקות CTS-V ולאיסוף תוצאות הבדיקות.
- מקרה בדיקה
בדיקה ספציפית שמופעלת ב-DUT. תרחישי בדיקה אוטומטיים נכתבים ב-Java כבדיקות JUnit ונארזים בקובצי APK של Android להפעלה במכשיר היעד.
תרחישי הבדיקה יכולים להיות בדיקות יחידה או בדיקות פונקציונליות. בדיקת יחידה בודקת יחידות אטומיות של קוד בפלטפורמת Android. לדוגמה, בדיקת יחידה עשויה לבדוק מחלקה אחת של Android.
בבדיקה פונקציונלית מופעל שילוב של שיטות וסיווגים שמשמשים לתרחיש שימוש ספציפי.
- הגדרת בדיקה
קבוצה ספציפית של בדיקות אוטומטיות שמופעלות ב-DUT. הגדרות הבדיקה הן קובצי XML שנמצאים בתיקייה
WORKING_DIRECTORY/cts/tools/cts-tradefed/res/config. יש הגדרות בדיקה שמכילות את כל תרחישי הבדיקה האוטומטיים, והגדרות בדיקה שמכילות קבוצת משנה של תרחישי בדיקה.- Test module
הגדרת בדיקה שמורכבת מאוסף של מקרי בדיקה לאותו תחום תכונות.
- תוכנית בדיקה
הגדרת בדיקה שמורכבת מאוסף של מודולי בדיקה.
היקף הבדיקה
כדי לוודא תאימות, תרחישי הבדיקה כוללים את התחומים הבאים:
| אזור | תיאור |
|---|---|
| בדיקות חתימה | בכל גרסת Android יש קובצי XML שמתארים את החתימות של כל ממשקי ה-API הציבוריים שנכללים בגרסה. ערכת ה-CTS כוללת כלי לבדיקת חתימות ה-API האלה מול ממשקי ה-API שזמינים במכשיר. התוצאות של בדיקת החתימה מתועדות בקובץ ה-XML של תוצאות הבדיקה. |
| בדיקות של Platform API | כדאי לבדוק את ממשקי ה-API של הפלטפורמה (ספריות הליבה ומסגרת האפליקציה של Android) כמו שמתואר באינדקס המחלקות של ה-SDK, כדי לוודא שה-API תקין, כולל חתימות נכונות של מחלקות, מאפיינים ושיטות, התנהגות נכונה של שיטות ובדיקות שליליות כדי לוודא שהטיפול בפרמטרים לא תקינים מתבצע כמו שמצופה. |
| בדיקות Dalvik | הבדיקות מתמקדות בבדיקת פורמט קובץ ההפעלה של Dalvik. |
| מודל נתונים של פלטפורמה | בדיקות ה-CTS בודקות את מודל הנתונים של פלטפורמת הליבה כפי שהוא מוצג למפתחי אפליקציות דרך ספקי תוכן, כפי שמתואר בחבילת ה-SDK
android.provider (כולל אנשי קשר, דפדפנים והגדרות) |
| התעניינות בפלטפורמה | הבדיקות ב-CTS בודקות את הכוונות של פלטפורמת הליבה, כפי שמתואר ב-SDK Common intents. |
| הרשאות לפלטפורמה | בדיקות ה-CTS בודקות את ההרשאות של הפלטפורמה המרכזית, כפי שמתואר ב-SDK
Manifest.permission. |
| משאבים של פלטפורמות | בדיקות ה-CTS בודקות את הטיפול הנכון בסוגי המשאבים של פלטפורמת הליבה, כפי שמתואר ב סקירה הכללית של סוגי המשאבים ב-SDK. בבדיקות CTS נכללות בדיקות של ערכים פשוטים, משאבי drawable, nine-patch, אנימציות, פריסות, סגנונות ועיצובים, וטעינה של משאבים חלופיים. |
המאמרים הבאים
אחרי שקוראים את המסמך הזה, ממשיכים אל הגדרת CTS.