-
-
Notifications
You must be signed in to change notification settings - Fork 8.3k
docs: Improve documentation for writing and running tests #17301
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #17301 +/- ##
=======================================
Coverage 98.54% 98.54%
=======================================
Files 169 169
Lines 21898 21898
=======================================
Hits 21579 21579
Misses 319 319 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
c8af42b
to
7b7745a
Compare
Not sure if it's important enough to be featured in that document, but maybe it'd be useful to document the special test file name prefixes/suffixes recognised by For example, test files whose name starts with |
I think that is a good addition |
Yeah I do think it'd be helpful to have these itemised somewhere as it's certainly not abvious for new developers! I'm not too sure about how best to divide what does in the rst docs and what goes in the readme here... I kinda think the readme is perhaps better for "internals" things like that which are maybe of more interest to low level developers, with the rst docs more focussing on "end users" interested in running tests? |
I personally use the README files as a quickstart guide myself, always favouring explicit documentation if it's available. It used to be like that back then, when dinosaurs still roamed freely and whatnot, so maybe somebody from a younger demographics should weigh in on this. Considering the users/developers split, I wonder if this possible TOC for three (or two) documents - names are generic on purpose - can be a starting point for a discussion on this:
I can help out on the natmod tests bit if needed, as long as somebody else fixes the grammar :) |
for context : I just got an inflatable Dino for my birthday. |
This commit reorganizes the test suite documentation to provide clearer separation between end-user and developer information: * tests/README.md: Simplified to serve as a quick start guide focusing on essential commands for running tests and understanding results. * docs/develop/writingtests.rst: Converted to an index page that links to the two new detailed guides below. * docs/develop/test_quickstart.rst: New guide for end users covering: - Running standard tests with run-tests.py - Understanding test results and handling failures - Basic performance benchmarking - Multi-instance test basics - SSL/TLS test setup * docs/develop/test_developers.rst: New comprehensive guide for developers covering: - Test suite organization and structure - Writing different types of tests - Advanced run-tests.py usage - Detailed filename pattern documentation for automatic test skipping - Multi-instance test development - Native module and internal benchmark testing The new structure eliminates duplication and makes it easier for both end users and developers to find the information they need. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> Signed-off-by: Andrew Leech <andrew.leech@planetinnovation.com.au>
7b7745a
to
ef5d948
Compare
Thanks for the suggestions, I've restructured the content in the latest push. I haven't got the rst docs importing the readme, not sure how much adjusting would be needed in the sphinx stuff to support that? |
The content looks pretty streamlined now, that's great. I'm not much of a sphinx user so I can't comment on how rst inclusion/handling can be improved - but content-wise it's really good! |
Summary
I wanted to use some LLM assitance to create new unit tests. To aid in this process, it helps to have comprehensive docs to inform the LLM's how best to write and run unit tests, so I started with that.
These updates were mostly written with Google's gemini-2.5-pro-exp-03-25 though some final review and cleanup was done with Anthropic Claude 3.7
The updated documentation provides:
multitest
helper for coordination.Testing
Just manual review of the content.