diff --git a/src/plugins/autotest/qtest/qttestconfiguration.cpp b/src/plugins/autotest/qtest/qttestconfiguration.cpp
index 2329bfe6bc5..0875ec18a63 100644
--- a/src/plugins/autotest/qtest/qttestconfiguration.cpp
+++ b/src/plugins/autotest/qtest/qttestconfiguration.cpp
@@ -67,6 +67,12 @@ QStringList QtTestConfiguration::argumentsForTestRunner() const
if (!metricsOption.isEmpty())
arguments << metricsOption;
+ if (qtSettings->verboseBench)
+ arguments << "-vb";
+
+ if (qtSettings->logSignalsSlots)
+ arguments << "-vs";
+
if (runMode() == DebuggableTestConfiguration::Debug) {
if (qtSettings->noCrashHandler)
arguments << "-nocrashhandler";
diff --git a/src/plugins/autotest/qtest/qttestoutputreader.cpp b/src/plugins/autotest/qtest/qttestoutputreader.cpp
index aa86681a486..acf435fd88c 100644
--- a/src/plugins/autotest/qtest/qttestoutputreader.cpp
+++ b/src/plugins/autotest/qtest/qttestoutputreader.cpp
@@ -319,7 +319,7 @@ void QtTestOutputReader::processPlainTextOutput(const QByteArray &outputLine)
static QRegExp finish("^[*]{9} Finished testing of (.*) [*]{9}$");
static QRegExp result("^(PASS |FAIL! |XFAIL |XPASS |SKIP |BPASS |BFAIL |RESULT "
- "|INFO |QWARN |WARNING|QDEBUG ): (.*)$");
+ "|INFO |QWARN |WARNING|QDEBUG ): (.*)$");
static QRegExp benchDetails("^\\s+([\\d,.]+ .* per iteration \\(total: [\\d,.]+, iterations: \\d+\\))$");
static QRegExp locationUnix("^ Loc: \\[(.*)\\]$");
diff --git a/src/plugins/autotest/qtest/qttestsettings.cpp b/src/plugins/autotest/qtest/qttestsettings.cpp
index 1b672cd29dd..dba1be98e27 100644
--- a/src/plugins/autotest/qtest/qttestsettings.cpp
+++ b/src/plugins/autotest/qtest/qttestsettings.cpp
@@ -31,6 +31,8 @@ namespace Internal {
static const char metricsKey[] = "Metrics";
static const char noCrashhandlerKey[] = "NoCrashhandlerOnDebug";
static const char useXMLOutputKey[] = "UseXMLOutput";
+static const char verboseBenchKey[] = "VerboseBench";
+static const char logSignalsSlotsKey[] = "LogSignalsSlots";
static MetricsType intToMetrics(int value)
{
@@ -60,6 +62,8 @@ void QtTestSettings::fromFrameworkSettings(const QSettings *s)
metrics = intToMetrics(s->value(metricsKey, Walltime).toInt());
noCrashHandler = s->value(noCrashhandlerKey, true).toBool();
useXMLOutput = s->value(useXMLOutputKey, true).toBool();
+ verboseBench = s->value(verboseBenchKey, false).toBool();
+ logSignalsSlots = s->value(logSignalsSlotsKey, false).toBool();
}
void QtTestSettings::toFrameworkSettings(QSettings *s) const
@@ -67,6 +71,8 @@ void QtTestSettings::toFrameworkSettings(QSettings *s) const
s->setValue(metricsKey, metrics);
s->setValue(noCrashhandlerKey, noCrashHandler);
s->setValue(useXMLOutputKey, useXMLOutput);
+ s->setValue(verboseBenchKey, verboseBench);
+ s->setValue(logSignalsSlotsKey, logSignalsSlots);
}
QString QtTestSettings::metricsTypeToOption(const MetricsType type)
diff --git a/src/plugins/autotest/qtest/qttestsettings.h b/src/plugins/autotest/qtest/qttestsettings.h
index 9418059243b..8f2c0954b9b 100644
--- a/src/plugins/autotest/qtest/qttestsettings.h
+++ b/src/plugins/autotest/qtest/qttestsettings.h
@@ -49,6 +49,8 @@ public:
MetricsType metrics = Walltime;
bool noCrashHandler = true;
bool useXMLOutput = true;
+ bool verboseBench = false;
+ bool logSignalsSlots = false;
protected:
void fromFrameworkSettings(const QSettings *s) override;
diff --git a/src/plugins/autotest/qtest/qttestsettingspage.cpp b/src/plugins/autotest/qtest/qttestsettingspage.cpp
index 8258440ec4e..8aa4c6cc133 100644
--- a/src/plugins/autotest/qtest/qttestsettingspage.cpp
+++ b/src/plugins/autotest/qtest/qttestsettingspage.cpp
@@ -47,6 +47,8 @@ void QtTestSettingsWidget::setSettings(const QtTestSettings &settings)
{
m_ui.disableCrashhandlerCB->setChecked(settings.noCrashHandler);
m_ui.useXMLOutputCB->setChecked(settings.useXMLOutput);
+ m_ui.verboseBenchmarksCB->setChecked(settings.verboseBench);
+ m_ui.logSignalsAndSlotsCB->setChecked(settings.logSignalsSlots);
switch (settings.metrics) {
case MetricsType::Walltime:
m_ui.walltimeRB->setChecked(true);
@@ -74,6 +76,8 @@ QtTestSettings QtTestSettingsWidget::settings() const
result.noCrashHandler = m_ui.disableCrashhandlerCB->isChecked();
result.useXMLOutput = m_ui.useXMLOutputCB->isChecked();
+ result.verboseBench = m_ui.verboseBenchmarksCB->isChecked();
+ result.logSignalsSlots = m_ui.logSignalsAndSlotsCB->isChecked();
if (m_ui.walltimeRB->isChecked())
result.metrics = MetricsType::Walltime;
else if (m_ui.tickcounterRB->isChecked())
diff --git a/src/plugins/autotest/qtest/qttestsettingspage.ui b/src/plugins/autotest/qtest/qttestsettingspage.ui
index 38837afee87..4991107a022 100644
--- a/src/plugins/autotest/qtest/qttestsettingspage.ui
+++ b/src/plugins/autotest/qtest/qttestsettingspage.ui
@@ -46,6 +46,23 @@ Warning: Plain text output is missing some information (e.g. duration)
+ -
+
+
+ Verbose benchmarks
+
+
+
+ -
+
+
+ Log every signal emission and resulting slot invocations.
+
+
+ Log signals and slots
+
+
+
-