與 Android CTS 整合

Android CTS 版本套件 (可從 Android 相容性下載項目取得) 包含 Khronos 相容性測試,且需要通過其中一部分測試 (稱為 mustpass 清單)。如果裝置不支援目標 API 或擴充功能,系統會略過測試,並將測試結果回報為通過。

mustpass 清單涵蓋 OpenGL ES 2.0 至 OpenGL ES 3.2 和 Vulkan 1.1。mustpass 檔案位於 Khronos 相容性測試的 android/cts 目錄下。您可以使用下列指令,透過 cts-tradefed 公用程式執行這些測試:

cts-tradefed run cts --plan CTS-DEQP

重複執行作業 (不含 CTS)

如要複製 CTS 執行作業,請安裝 CTS 套件的 deqp APK,然後使用下列指令:

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 通行證可包含 PassNotSupportedQualityWarningCompatibilityWarning
  • CTS 失敗可能包括 FailResourceErrorCrashTimeoutInternalError