Integracja z Android CTS

Pakiety wersji Android CTS (dostępne na stronie Android Compatibility Downloads) zawierają testy zgodności Khronos i wymagają przejścia podzbioru tych testów (znanego jako lista mustpass). W przypadku urządzeń, które nie obsługują docelowego interfejsu API ani rozszerzenia, testy są pomijane i oznaczane jako zakończone powodzeniem.

Lista mustpass obejmuje obsługę interfejsów OpenGL ES 2.0–3.2 i Vulkan 1.1. Pliki mustpass znajdziesz w katalogu android/cts w testach zgodności Khronos. Możesz uruchomić te testy za pomocą narzędzia cts-tradefed, wpisując to polecenie:

cts-tradefed run cts --plan CTS-DEQP

Duplikowanie uruchomień bez pakietu CTS

Aby odtworzyć działanie CTS, zainstaluj pakiet APK programu drawElements Quality Program (dEQP) z pakietu CTS i użyj tego polecenia:

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

Ważny jest argument --deqp-gl-config-name=rgba8888d24s8, który żąda uruchomienia testów na ekranowej powierzchni RGBA 8888 z 24-bitowym buforem głębi i 8-bitowym buforem szablonu. Pamiętaj, aby ustawić wybrane testy za pomocą argumentu --deqp-case.

Mapowanie wyników CTS

W CTS na Androida test może mieć jeden z 3 stanów: zakończony powodzeniem, zakończony niepowodzeniem lub niewykonany (plik APK dEQP ma więcej dostępnych kodów wyników). CTS automatycznie mapuje kody wyników testów zgodności Khronos na wyniki CTS:

  • Zgodność z pakietem CTS może obejmować Pass, NotSupported, QualityWarningCompatibilityWarning.
  • Awaria CTS może obejmować Fail, ResourceError, Crash, TimeoutInternalError.