Les packages de versions Android CTS (disponibles sur les téléchargements de compatibilité Android) incluent des tests de conformité Khronos et exigent qu'un sous-ensemble de ces tests (appelé liste mustpass
) soit réussi. Pour les appareils qui ne sont pas compatibles avec une API ou une extension cible, les tests sont ignorés et sont signalés comme réussis.
La liste mustpass
inclut la couverture d'OpenGL ES 2.0 à OpenGL ES 3.2 et Vulkan 1.1. Les fichiers mustpass
se trouvent dans le répertoire android/cts
des tests de conformité Khronos. Vous pouvez exécuter ces tests via l'utilitaire cts-tradefed
à l'aide de la commande suivante:
cts-tradefed run cts --plan CTS-DEQP
Exécutions en double sans CTS
Pour reproduire l'exécution CTS, installez l'APK deqp du package CTS et utilisez la commande suivante:
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
L'argument --deqp-gl-config-name=rgba8888d24s8
est important, car il demande que les tests soient exécutés sur une surface à l'écran RGBA 8888 avec un tampon de profondeur de 24 bits et un tampon de modèle de 8 bits. N'oubliez pas de définir les tests souhaités à l'aide de l'argument --deqp-case
.
Mappage des résultats CTS
Dans Android CTS, un cas de test peut se trouver dans l'un des trois états suivants : "Passé", "Échec" ou "Non exécuté" (le deqp dispose de plus de codes de résultat disponibles). Le CTS met automatiquement en correspondance les codes de résultat des tests de conformité Khronos avec les résultats du CTS:
- Une carte CTS peut inclure
Pass
,NotSupported
,QualityWarning
etCompatibilityWarning
. - Un échec CTS peut inclure
Fail
,ResourceError
,Crash
,Timeout
etInternalError
.