Integracja z Androidem CTS

Pakiety wydań systemu Android CTS (dostępne w Android Compatibility Downloads ) obejmują testy zgodności Khronos i wymagają części tych testów (znanych jako lista mustpass ), aby przejść. W przypadku urządzeń, które nie obsługują docelowego interfejsu API lub rozszerzenia, testy są pomijane i zgłaszane jako pozytywne.

Lista mustpass obejmuje mustpass od OpenGL ES 2.0 do OpenGL ES 3.2 i Vulkan 1.1. Pliki mustpass można znaleźć w katalogu android/cts w Khronos Conformance Tests. Możesz przeprowadzić te testy za pomocą narzędzia cts-tradefed za pomocą następującego polecenia:

cts-tradefed run cts --plan CTS-DEQP

Powielanie przebiegów bez CTS

Aby zreplikować przebieg CTS, zainstaluj pakiet APK deqp pakietu CTS i użyj następującego 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żną częścią jest --deqp-gl-config-name=rgba8888d24s8 , który żąda uruchomienia testów na powierzchni ekranowej RGBA 8888 z 24-bitowym buforem głębi i 8-bitowym buforem szablonu. Pamiętaj, aby ustawić żądane testy za pomocą argumentu --deqp-case .

Mapowanie wyników CTS

W systemie Android CTS przypadek testowy może zakończyć się w jednym z trzech stanów: przeszedł, nie powiódł się lub nie został wykonany (deqp ma więcej dostępnych kodów wyników). CTS automatycznie mapuje kody wyników testu zgodności Khronosa na wyniki CTS:

  • Przepustka CTS może obejmować Pass , NotSupported , QualityWarning i CompatibilityWarning .
  • Awaria CTS może obejmować Fail , ResourceError , Crash , Timeout i InternalError .