@@ -65,6 +65,7 @@ macro(add_qml_test SUBPATH COMPONENT_NAME)
6565 cmake_parse_arguments(qmltest "${options}" "" "${multi_value_keywords}" ${ARGN})
6666
6767 set(qmltest_TARGET test${COMPONENT_NAME})
68+ set(qmltest_xvfb_TARGET xvfbtest${COMPONENT_NAME})
6869 set(qmltest_FILE ${SUBPATH}/tst_${COMPONENT_NAME})
6970
7071 set(qmltestrunner_imports "")
@@ -87,6 +88,21 @@ macro(add_qml_test SUBPATH COMPONENT_NAME)
8788 -o ${CMAKE_BINARY_DIR}/${qmltest_TARGET}.xml,xunitxml
8889 -o -,txt
8990 )
91+ set(qmltest_xvfb_command
92+ env ${qmltest_ENVIRONMENT}
93+ xvfb-run -l -s "-screen 0 1024x768x24"
94+ ${qmltestrunner_exe} -input ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
95+ ${qmltestrunner_imports}
96+ -o ${CMAKE_BINARY_DIR}/${qmltest_TARGET}.xml,xunitxml
97+ -o -,txt
98+ )
99+
100+ add_qmltest_target(${qmltest_TARGET} "${qmltest_command}")
101+ add_qmltest_target(${qmltest_xvfb_TARGET} "${qmltest_xvfb_command}")
102+ add_manual_qml_test(${SUBPATH} ${COMPONENT_NAME} ${ARGN})
103+endmacro(add_qml_test)
104+
105+macro(add_qmltest_target qmltest_TARGET qmltest_command)
90106 add_custom_target(${qmltest_TARGET} ${qmltest_command})
91107
92108 if(NOT "${qmltest_PROPERTIES}" STREQUAL "")
@@ -117,5 +133,4 @@ macro(add_qml_test SUBPATH COMPONENT_NAME)
117133 endif()
118134 endif("${qmltest_NO_TARGETS}" STREQUAL "FALSE")
119135
120− add_manual_qml_test(${SUBPATH} ${COMPONENT_NAME} ${ARGN})
121−endmacro(add_qml_test)
136+endmacro(add_qmltest_target)