Integration mit Android CTS

Android CTS-Versionspakete (verfügbar unter Android-Kompatibilitäts-Downloads ) enthalten Khronos-Konformitätstests und erfordern eine Teilmenge dieser Tests (bekannt als mustpass Liste), um bestanden zu werden. 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 von OpenGL ES 2.0 bis OpenGL ES 3.2 und Vulkan 1.1. mustpass Dateien finden Sie im Verzeichnis android/cts in den Khronos Conformance Tests. Sie können diese Tests über das Dienstprogramm cts-tradefed mit dem folgenden Befehl ausführen:

cts-tradefed run cts --plan CTS-DEQP

Duplizieren läuft ohne CTS

Um den CTS-Lauf zu replizieren, installieren Sie das 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

Der wichtige Teil ist das --deqp-gl-config-name=rgba8888d24s8 , das anfordert, dass die Tests auf einer RGBA 8888-Bildschirmoberfläche mit einem 24-Bit-Tiefenpuffer und einem 8-Bit-Schablonenpuffer ausgeführt werden. Denken Sie daran, die gewünschten Tests mit dem Argument --deqp-case .

CTS-Ergebniszuordnung

Im Android CTS kann ein Testfall in einem von drei Zuständen enden: bestanden, fehlgeschlagen oder nicht ausgeführt (deqp hat mehr Ergebniscodes zur Verfügung). CTS ordnet die Ergebniscodes des Khronos-Konformitätstests automatisch den CTS-Ergebnissen zu:

  • Ein CTS-Pass kann Pass , NotSupported , QualityWarning und CompatibilityWarning enthalten.
  • Ein CTS-Fehler kann Fail , ResourceError , Crash , Timeout und InternalError umfassen.