11.02.2022 12:29, Kevin Wolf wrote:
Am 09.02.2022 um 11:15 hat Thomas Huth geschrieben:
If multiple tests run in parallel, they must use unique file
names for the test output.

Suggested-by: Hanna Reitz <hre...@redhat.com>
Signed-off-by: Thomas Huth <th...@redhat.com>
---
  tests/qemu-iotests/testrunner.py | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/qemu-iotests/testrunner.py b/tests/qemu-iotests/testrunner.py
index 0eace147b8..9d20f51bb1 100644
--- a/tests/qemu-iotests/testrunner.py
+++ b/tests/qemu-iotests/testrunner.py
@@ -259,7 +259,7 @@ def do_run_test(self, test: str, mp: bool) -> TestResult:
          """
f_test = Path(test)
-        f_bad = Path(f_test.name + '.out.bad')
+        f_bad = Path(f'{os.getpid()}-{f_test.name}.out.bad')
          f_notrun = Path(f_test.name + '.notrun')
          f_casenotrun = Path(f_test.name + '.casenotrun')
          f_reference = Path(self.find_reference(test))

Hmm... It does make sense, but nobody ever cleans those files up.
Currently, the next run of the test will just overwrite the existing
file or delete it when the test succeeds. So after running the test
suite, you have .out.bad files for every failed test, but not for those
that succeeded.

After this change, won't the test directory accumulate tons of .out.bad
files over time?


Actually, .out.bad files are put not to TEST_DIR but to 
build/tests/qemu-iotests..

If we want to do several runs in parallel, I think all files that test-run 
produces should be in TEST_DIR and SOCK_DIR. And we should care to keep 
TEST_DIR/*.out.bad after test-run, so user can examine them.


--
Best regards,
Vladimir

Reply via email to