Интеграция с 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 Conformance Tests. Вы можете запустить эти тесты с помощью утилиты cts-tradefed с помощью следующей команды:

cts-tradefed run cts --plan CTS-DEQP

Повторные запуски без CTS

Чтобы повторить запуск CTS, установите APK-файл drawElements Quality Program ( 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 тестовый случай может оказаться в одном из трёх состояний: пройден, провален или не выполнен (в APK-файле dEQP доступно больше кодов результатов). CTS автоматически сопоставляет коды результатов теста соответствия Khronos с результатами CTS:

  • Проход CTS может включать Pass , NotSupported , QualityWarning и CompatibilityWarning .
  • Сбой CTS может включать в себя Fail , ResourceError , Crash , Timeout и InternalError .