Cómo realizar la integración con CTS de Android

Los paquetes de lanzamiento del CTS de Android (disponibles en Descargas de compatibilidad con Android) incluyen las Pruebas de conformidad de Khronos y requieren que se apruebe un subconjunto de estas pruebas (conocido como la lista mustpass). En el caso de los dispositivos que no admiten una API o extensión de destino, se omiten las pruebas y se informa que se aprobaron.

La lista de mustpass incluye la cobertura de OpenGL ES 2.0 a OpenGL ES 3.2 y Vulkan 1.1. Los archivos mustpass se pueden encontrar en el directorio android/cts en las pruebas de conformidad de Khronos. Puedes ejecutar estas pruebas a través de la utilidad cts-tradefed con el siguiente comando:

cts-tradefed run cts --plan CTS-DEQP

Ejecuciones duplicadas sin CTS

Para replicar la ejecución de CTS, instala el APK de drawElements Quality Program (dEQP) del paquete de CTS y usa el siguiente 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

La parte importante es el argumento --deqp-gl-config-name=rgba8888d24s8, que solicita que las pruebas se ejecuten en una superficie en pantalla RGBA 8888 con un búfer de profundidad de 24 bits y un búfer de stencil de 8 bits. Recuerda configurar las pruebas seleccionadas con el argumento --deqp-case.

Asignación de resultados de CTS

En el CTS de Android, un caso de prueba puede terminar en uno de tres estados: aprobado, fallido o no ejecutado (el APK de dEQP tiene más códigos de resultado disponibles). El CTS asigna automáticamente los códigos de resultado de las pruebas de conformidad de Khronos a los resultados del CTS:

  • Un pase de CTS puede incluir Pass, NotSupported, QualityWarning y CompatibilityWarning.
  • Un error del CTS puede incluir Fail, ResourceError, Crash, Timeout y InternalError.