Os pacotes de lançamento do CTS do Android (disponíveis em
Downloads de compatibilidade do Android)
incluem Testes de conformidade do Khronos
e exigem a aprovação de um subconjunto desses testes (conhecido como lista mustpass).
Para dispositivos que não oferecem suporte a uma API ou extensão de destino, os testes são ignorados
e informados como aprovados.
A lista mustpass inclui cobertura do OpenGL ES 2.0 ao 3.2
e do Vulkan 1.1. Os arquivos mustpass podem ser encontrados no diretório android/cts
nos testes de conformidade do Khronos. É possível executar esses testes usando o utilitário
cts-tradefed com o seguinte comando:
cts-tradefed run cts --plan CTS-DEQP
Execuções duplicadas sem CTS
Para replicar a execução do CTS, instale o APK do programa de qualidade drawElements (dEQP)
do pacote CTS e use o seguinte comando:
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
A parte importante é o argumento --deqp-gl-config-name=rgba8888d24s8, que
solicita que os testes sejam executados em uma superfície na tela RGBA 8888 com um buffer de profundidade de 24 bits
e um buffer estêncil de 8 bits. Não se esqueça de definir os testes selecionados usando o argumento --deqp-case.
Mapeamento de resultados do CTS
No CTS do Android, um caso de teste pode terminar em um dos três estados: aprovado, falha ou não executado. O APK dEQP tem mais códigos de resultado disponíveis. O CTS mapeia automaticamente os códigos de resultado do teste de conformidade do Khronos para os resultados do CTS:
- Uma aprovação do CTS pode incluir
Pass,NotSupported,QualityWarningeCompatibilityWarning. - Uma falha do CTS pode incluir
Fail,ResourceError,Crash,TimeouteInternalError.