שילוב עם Android CTS

חבילות הגרסה של Android CTS (זמינות ב-Android Compatibility Downloads) כוללות בדיקות תאימות של Khronos, וצריך לעבור קבוצת משנה של הבדיקות האלה (שנקראת רשימת mustpass). במכשירים שלא תומכים ב-API או בתוסף היעד, הבדיקה מושמטת והיא תדווח כ'עברה'.

הרשימה mustpass כוללת כיסוי ל-OpenGL ES 2.0 עד OpenGL ES 3.2 ול-Vulkan 1.1. קובצי mustpass נמצאים בספרייה android/cts במבחני התאימות של Khronos. אפשר להריץ את הבדיקות האלה באמצעות השירות cts-tradefed באמצעות הפקודה הבאה:

cts-tradefed run cts --plan CTS-DEQP

הפעלות כפולות ללא CTS

כדי לשכפל את ההרצה של CTS, מתקינים את קובץ ה-APK של deqp מחבילת CTS ומשתמשים בפקודה הבאה:

adb -d shell am start -n com.drawelements.deqp/android.app.NativeActivity -e \
cmdLine "deqp --deqp-case=dEQP-GLES3.some_group.* --deqp-gl-config-name=rgba8888d24s8 --deqp-log-filename=/sdcard/dEQP-Log.qpa

החלק החשוב הוא הארגומנט --deqp-gl-config-name=rgba8888d24s8, שמבקש להריץ את הבדיקות על משטח RGBA 8888 במסך עם מאגר עומק של 24 ביט ומאגר סטנסיל של 8 ביט. חשוב לזכור להגדיר את הבדיקות הרצויות באמצעות הארגומנט --deqp-case.

מיפוי תוצאות CTS

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

  • כרטיס CTS יכול לכלול את המשתנים Pass, NotSupported, QualityWarning ו-CompatibilityWarning.
  • כשל ב-CTS יכול לכלול את הערכים Fail,‏ ResourceError,‏ Crash,‏ Timeout ו-InternalError.