Description
Practice shows that we are not yet perfect at catching regressions in the QRhi backends. (note that breaks do not occur in the QRhi API itself, but in the backends, sometimes intertwined with the shader management in qtshadertools - so testing the interface itself is futile, the actual backend code must be exercised "live")
- We must figure out a way to perform basic automated testing for Vulkan and Metal. The qrhi autotest is only exercised for OpenGL and D3D11 in CI.
Case in point: the 5.15 branch lived in a somewhat broken state for Metal for several weeks (affecting only when using .qsb files generated with an older version of shadertools - not really fatal but proves the point), not discovered until running the manual tests (qtbase/tests/manual/rhi).
Qt 6.0 cannot ship in this state.
- Revisit how we can utilize Lancelot even better. For example, should a dedicated QRhi test set created based on the manual tests?
- While the autotest already does some actual rendering, this can be enhanced further to exericise more features.
Attachments
Issue Links
- depends on
-
QTBUG-79550 Investigate SwiftShader as a software Vulkan implementation for CI purposes
- Closed
- relates to
-
QTBUG-78615 Withdrawn: Autotest QRhi/backend APIs via the Null backend
- Closed
-
QTBUG-78971 Extend qrhi autotest exercising APIs with offscreen targets
- Closed
-
QTBUG-78666 QRhi in virtual machines
- Closed
-
QTBUG-78974 Make select Quick/Scenegraph autotests exercise the QRhi-based rendering path in addition to the direct OpenGL one
- Closed
-
QTBUG-83975 Make sure there are lancelot test cases for all Quick ShaderEffect features
- Closed