TestRunner: filtering, skip mechanism, fail-fast #11
Labels
No labels
area:assertions
area:cli
area:client
area:harness
area:meta
area:reporting
area:runner
type:user-story
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
charles/ws-rpc-test#11
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
User story
As a test author, I want to run a subset of tests by name or tag, skip tests at runtime or registration, and bail on the first failure when iterating, so that the inner-loop feedback cycle stays fast.
Acceptance criteria
Filtering
RunConfig.filter: Option<String>— glob-like matcher (*wildcard) against test names. Empty/None means no filter.RunConfig.tag: Option<String>— exact tag match againstTestCase.tags.--filterand--tagis AND, not OR.report.filtered.Skip
Err(TestError::Skip("reason".into()))from its body to skip itself at runtime. (Resolves spec review §7.)runner.test(...).skip_if(|| condition_bool, "reason"). The condition is evaluated at run time (not registration time).Fail-fast
RunConfig.fail_fast: bool— stops execution after the first failure.skippedwith reason"fail-fast"(not silently dropped).after_eachfor the failing test still runs;after_allstill runs.References