Commit c9ecc3b953 for qemu.org
commit c9ecc3b95320e8da06bbd0426c688c15584703f5
Author: Daniel P. Berrangé <berrange@redhat.com>
Date: Mon Nov 2 16:34:47 2026 +0000
iotests: add --quiet arg to hide env variable dump
Every test run dumps a long list of environment variable settings.
While this is often useful, if you are trying to reproduce a bug
while repeatedly running a single test it can be quite noisy. Add
a --quiet flag to 'check' which allows the env variable dump to
be hidden. With this is only prints out the tests being run and
the overall status on completion.
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20261102163447.3613901-1-berrange@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
index 3941eac8e2..c8ba536970 100755
--- a/tests/qemu-iotests/check
+++ b/tests/qemu-iotests/check
@@ -46,6 +46,8 @@ def make_argparser() -> argparse.ArgumentParser:
description="Test run options",
formatter_class=argparse.ArgumentDefaultsHelpFormatter)
+ p.add_argument('-q', '--quiet', action='store_true',
+ help='reduce output verbosity to only test results')
p.add_argument('-n', '--dry-run', action='store_true',
help='show me, do not run tests')
p.add_argument('-j', dest='jobs', type=int, default=1,
@@ -230,6 +232,6 @@ if __name__ == '__main__':
with TestRunner(env, tap=args.tap,
color=args.color) as tr:
paths = [os.path.join(env.source_iotests, t) for t in tests]
- ok = tr.run_tests(paths, args.jobs)
+ ok = tr.run_tests(paths, args.jobs, args.quiet)
if not ok:
sys.exit(1)
diff --git a/tests/qemu-iotests/testrunner.py b/tests/qemu-iotests/testrunner.py
index 729680da4a..f35e65f805 100644
--- a/tests/qemu-iotests/testrunner.py
+++ b/tests/qemu-iotests/testrunner.py
@@ -376,7 +376,8 @@ def run_test(self, test: str,
sys.stdout.flush()
return res
- def run_tests(self, tests: List[str], jobs: int = 1) -> bool:
+ def run_tests(self, tests: List[str], jobs: int = 1,
+ quiet: bool = False) -> bool:
n_run = 0
failed = []
notrun = []
@@ -384,9 +385,10 @@ def run_tests(self, tests: List[str], jobs: int = 1) -> bool:
if self.tap:
print('TAP version 13')
- self.env.print_env('# ')
+ if not quiet:
+ self.env.print_env('# ')
print('1..%d' % len(tests))
- else:
+ elif not quiet:
self.env.print_env()
test_field_width = max(len(os.path.basename(t)) for t in tests) + 2