Integration in die Android CTS

Die Android CTS-Releasepakete (verfügbar unter Android Compatibility Downloads) enthalten Khronos-Konformitätstests und erfordern, dass eine Teilmenge dieser Tests (die sogenannte mustpass-Liste) bestanden wird. Bei Geräten, die eine Ziel-API oder -Erweiterung nicht unterstützen, werden Tests übersprungen und als bestanden gemeldet.

Die mustpass-Liste umfasst die Abdeckung für OpenGL ES 2.0 bis OpenGL ES 3.2 und Vulkan 1.1. mustpass -Dateien finden Sie im Verzeichnis android/cts in den Khronos-Konformitätstests. Sie können diese Tests mit dem Tool cts-tradefed mit dem folgenden Befehl ausführen:

cts-tradefed run cts --plan CTS-DEQP

Doppelte Ausführungen ohne CTS

Wenn Sie die CTS-Ausführung reproduzieren möchten, installieren Sie die drawElements Quality Program (dEQP) APK des CTS-Pakets und verwenden Sie den folgenden Befehl:

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

Wichtig ist das Argument --deqp-gl-config-name=rgba8888d24s8. Damit wird angefordert, dass die Tests auf einer RGBA 8888-Bildschirmoberfläche mit einem 24-Bit-Tiefenpuffer und einem 8-Bit-Stencilpuffer ausgeführt werden. Denken Sie daran, die ausgewählten Tests mit dem Argument --deqp-case festzulegen.

Zuordnung von CTS-Ergebnissen

In der Android CTS kann ein Testfall einen von drei Zuständen annehmen: bestanden, nicht bestanden oder nicht ausgeführt (die dEQP APK hat mehr Ergebniscodes verfügbar). CTS ordnet die Ergebniscodes der Khronos-Konformitätstests automatisch den CTS-Ergebnissen zu:

  • Ein CTS-Ergebnis „Bestanden“ kann Pass, NotSupported, QualityWarning und CompatibilityWarning umfassen.
  • Ein CTS-Ergebnis „Nicht bestanden“ kann Fail, ResourceError, Crash, Timeout und InternalError umfassen.