Generalize exclusion list

It seems there are some tests in the various Qt modules that skip
writing the XML testlog file. If there are good reasons for that (for
example test is a custom shellscript) then it should be added to the
DUMB_TESTS list.

Change-Id: Iffb00e1fda42bb8e7338a94c9320e45900db1bc1
Reviewed-by: Daniel Smith <Daniel.Smith@qt.io>
This commit is contained in:
Dimitrios Apostolou 2022-04-21 16:30:52 +02:00
parent 399dbba775
commit 72793ef31d

View File

@ -106,6 +106,12 @@ VERBOSE_ENV = {
NO_RERUN_FUNCTIONS = {
"initTestCase", "init", "cleanup", "cleanupTestCase"
}
# The following tests do not write XML log files properly. qt-testrunner will
# not try to append "-o" to their command-line or re-run failed testcases.
# Only add tests here if absolutely necessary!
NON_XML_GENERATING_TESTS = {
"tst_selftests", # qtestlib's selftests are using an external test framework (Catch) that does not support -o argument
}
def parse_args():
@ -187,10 +193,8 @@ Default flags: --max-repeats 5 --passes-needed 1
L.info("Detected androidtestrunner, test will be handled specially. Detected test basename: %s",
args.test_basename)
# The qtestlib selftests are implemented using an external test library
# (Catch), and they don't support the same command-line options.
if args.test_basename == "tst_selftests":
L.info("Detected special test not able to generate XML log! Will not repeat individual testcases.")
if args.test_basename in NON_XML_GENERATING_TESTS:
L.info("Detected special test not able to generate XML log! Will not parse it and will not repeat individual testcases")
args.no_extra_args = True
args.max_repeats = 0