Skip to content

Commit 86305e3

Browse files
kanard38knard38
authored andcommitted
DAOS-18626 test: Add per-sanitizer suite selection and JUnit reporting to run_utest.py
Extend utils/run_utest.py so the unit-test suite can be run selectively under ASan, UBSan, or TSan, and so results are reported in a form CI can consume: - New --asan/--ubsan/--tsan flags select suites via new 'asan'/'tsan' Suite config keys (utest.yaml); suites unsuitable under a given sanitizer (e.g. memcheck-only suites, control Go tests) opt out. - New --list flag prints the suites/tests that would run, honoring all selection/filter options, without running them. - Per-test sanitizer log capture: new-since-setup() sanitizer log files (found via the ASAN_OPTIONS/UBSAN_OPTIONS/TSAN_OPTIONS log_path= directory) are copied into each test's own log dir, tagged with a companion '<logfile>.testname' file for attribution. - cmocka XML results are now written into CMOCKA_XML_FILE's directory (the Docker-mounted test-results/ volume) instead of a source-relative test_results/ directory, and only newly-appeared XML files are relabeled per test/suite. - In GHA context, one JUnit TestCase per test is now written per suite (write_xml_result()) so result counts are accurate. - utils/utest.yaml: tag suites with 'tsan: True' (opt-in, TSan suites are a small subset) and 'asan: False'/'gha: False' (opt-out) as appropriate for each suite. None of these flags or config keys are referenced by any workflow yet; this is a standalone, backward-compatible change to the test runner. Part of the DAOS-18626 ASan CI split (see ckochhof/dev/master/daos-18626/patch-001 for the original, unsplit commit). Signed-off-by: Cedric Koch-Hofer <cedric.koch-hofer@hpe.com>
1 parent d305d2d commit 86305e3

3 files changed

Lines changed: 215 additions & 33 deletions

File tree

utils/cq/words.dict

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ ABT
22
ACL
33
AIO
44
APs
5+
ASan
56
Ansible
67
BW
78
Broadwell
@@ -63,9 +64,11 @@ SubProcess
6364
Subdirectories
6465
TestFail
6566
Testcase
67+
tsan
6668
UCX
6769
UNS
6870
Uncomment
71+
ubsan
6972
VMD
7073
XUnitResult
7174
acl
@@ -118,6 +121,7 @@ cmdlines
118121
cmdresult
119122
cmds
120123
cmocka
124+
cmocka's
121125
cmp
122126
coh
123127
committable
@@ -156,6 +160,7 @@ dfs
156160
dfuse
157161
dir
158162
dirname
163+
disambiguates
159164
distro
160165
dkey
161166
dkeys

0 commit comments

Comments
 (0)