doc: add TESTING.md documenting testing strategy - #227
Conversation
lancesix
left a comment
There was a problem hiding this comment.
This is a good start, but I feel that this document gets into some details that are bound to get out of sync rapidly. It discusses details of some function or script parameters, but I am afraid that those scripts / functions can end-up changing and causing discontinuity here.
|
On a first skim, I think the document is too verbose. We need to make it cover the points but be succint. We don't need to talk about dependencies required to test but rather focus on what test strategies we have and a quick summary of what they are, what they look like etc. |
2dddba8 to
e01880b
Compare
Update: rewrote TESTING.md per review feedbackThanks for the reviews. I've reworked the document to address the two overarching points — that it was too verbose (@lumachad) and got into specifics that would drift out of sync (@lancesix) — and pushed the update
All individual review comments have been addressed and replied to inline. Please take another look. |
czidev-amd
left a comment
There was a problem hiding this comment.
Please also check all the symbols in this file, use standard ones, do not use the one from extended ascii set.
Otherwise looks good to me.
|
You might want to keep an eye on ROCm/TheRock#6711. |
e01880b to
87fd5eb
Compare
Update: addressed @czidev-amd's review + light alignment with the ROCm testing-doc standardPushed an update:
On the copyright-banner question: TheRock's testing/CONTRIBUTING/README Markdown docs and ROCgdb's own All other review threads have been addressed and resolved. PTAL. |
87fd5eb to
1f7a5ad
Compare
Update: addressed @palves's comment
All review threads are resolved. PTAL. |
1f7a5ad to
0b0ff89
Compare
Update: restructured to follow the ROCm testing-doc outlineReworked
All earlier review fixes are preserved (ASCII-only, defers to upstream, no build-dep duplication, no direct |
lumachad
left a comment
There was a problem hiding this comment.
A few comments on the current versions. I think this is mostly good. Just need to polish it a bit more and improve the signal to noise ratio.
Add a top-level TESTING.md summarizing ROCgdb's testing strategy: the selftest (unit test) framework, the DejaGnu functional testsuite (including the GPU tests), performance tests, when tests run in CI, and how to add new tests. The document stays concise and high-level, defers to upstream GDB testing docs (gdb/testsuite/README, the TestingGDB wiki) as the source of truth, and points to README-ROCM.md / gdb/README for build and dependency details rather than duplicating them.
0b0ff89 to
eb932f9
Compare
Update: addressed @lumachad's reviewPushed changes addressing all comments from the latest review:
|
lumachad
left a comment
There was a problem hiding this comment.
I'm happy with this one as a first draft. We can iterate on it going forward.
Summary
Adds a top-level
TESTING.mdthat serves as the authoritative reference for how ROCgdb is validated and how engineers should write and run tests. This satisfies the org-wide requirement that every component repository document its testing strategy.What's included
The document is organized into 10 sections and covers the areas requested by the ticket:
--with-amd-dbgapi), with an example development build.maintenance selftestmechanism,--enable-unit-tests/GDB_SELF_TEST,gdbsupport/selftest.h, and how selftests are run and wrapped bygdb.gdb/unittest.exp.make check-gdbwithTESTS/RUNTESTFLAGS, output files, result codes, and the ROCm/GPU slice (gdb.rocm/,allow_hip_testsskip logic, GPU lock, thehipboard, and thetest_rocgdb.pyCI runner).gdb.perf/framework,check-perf, and how baselines/regressions are handled..expconventions, common helper procs, and what constitutes sufficient coverage.Notes
lib/rocm.exp,boards/hip.exp,.github/scripts/test_rocgdb.py, and the CI workflows).