Os pacotes de lançamento do Android CTS (disponíveis nos
Downloads de compatibilidade
do Android) incluem testes de conformidade Khronos e exigem que um subconjunto desses
testes (conhecido como a lista mustpass
) seja aprovado. Para dispositivos que
não têm suporte a uma API ou extensão de destino, os testes são ignorados e informados como
aprovados.
A lista mustpass
inclui a cobertura do OpenGL ES 2.0 até
o OpenGL ES 3.2 e o 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 pelo utilitário cts-tradefed
com o seguinte comando:
cts-tradefed run cts --plan CTS-DEQP
Cópias de execução sem CTS
Para replicar a execução do CTS, instale o APK 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 RGBA 8888 na tela
com um buffer de profundidade de 24 bits e um buffer de stencil de 8 bits. Defina
os testes desejados 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, reprovado ou não executado (o 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:
- Um cartão CTS pode incluir
Pass
,NotSupported
,QualityWarning
eCompatibilityWarning
. - Uma falha do CTS pode incluir
Fail
,ResourceError
,Crash
,Timeout
eInternalError
.