TestRunner: optional parallel execution mode #12
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#12
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 with a large read-only suite, I want to opt independent tests into parallel execution, so that the suite finishes faster on multi-core machines.
Acceptance criteria
runner.test(...).parallel()marks a test as parallel-eligible at registration.RunConfig.parallel: boolenables parallel mode for the run; whenfalse, parallel marks are ignored and everything runs sequentially.RunConfig.parallel_workers: usize(default =std::thread::available_parallelism()) bounds concurrency.JoinSet.RpcClientconnection (multipleconnects to the samews_url); the harness is shared.before_each/after_eachrun on the test's own connection.before_all/after_allrun once on a separate shared connection.fail_fastis set, in-flight tests are allowed to finish but no new ones start; remaining are reported asskipped("fail-fast")..parallel()warns that tests sharing server-side state will interfere — opt-in, per test.Resolves
Spec review §8 (parallel mode underspecified).
References