diff --git a/tests/auto/widgets/qwebengineaccessibility/tst_qwebengineaccessibility.cpp b/tests/auto/widgets/qwebengineaccessibility/tst_qwebengineaccessibility.cpp
index 96795cf6498f60599eaa1395c6cdaf4973cc05a2..016c4f98ca92ffec462ef5d72509f5ada2d823a8 100644
--- a/tests/auto/widgets/qwebengineaccessibility/tst_qwebengineaccessibility.cpp
+++ b/tests/auto/widgets/qwebengineaccessibility/tst_qwebengineaccessibility.cpp
@@ -245,5 +245,8 @@ void tst_QWebEngineView::value()
     QCOMPARE(progressBarValueInterface->maximumValue().toInt(), 99);
 }
 
-QTEST_MAIN(tst_QWebEngineView)
+static QByteArrayList params = QByteArrayList()
+    << "--force-renderer-accessibility";
+
+W_QTEST_MAIN(tst_QWebEngineView, params)
 #include "tst_qwebengineaccessibility.moc"
diff --git a/tests/auto/widgets/util.h b/tests/auto/widgets/util.h
index 03557835897cde232202b805d93e51c1c8dacccb..83067fe8dca460f6e864a694db2f2516e860c967 100644
--- a/tests/auto/widgets/util.h
+++ b/tests/auto/widgets/util.h
@@ -164,3 +164,20 @@ static inline QUrl baseUrlSync(QWebEnginePage *page)
 }
 
 #define W_QSKIP(a, b) QSKIP(a)
+
+#define W_QTEST_MAIN(TestObject, params) \
+int main(int argc, char *argv[]) \
+{ \
+    QVector<const char *> w_argv(argc); \
+    for (int i = 0; i < argc; ++i) \
+        w_argv[i] = argv[i]; \
+    for (int i = 0; i < params.size(); ++i) \
+        w_argv.append(params[i].data()); \
+    int w_argc = w_argv.size(); \
+    \
+    QApplication app(w_argc, const_cast<char **>(w_argv.data())); \
+    app.setAttribute(Qt::AA_Use96Dpi, true); \
+    QTEST_DISABLE_KEYPAD_NAVIGATION \
+    TestObject tc; \
+    return QTest::qExec(&tc, argc, argv); \
+}