[Testing Platform] Batch Filter
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 1k
- Forks
- 312
- Avg merge
- 7h 46m
- Merged PRs (30d)
- 465
Description
This would work alongside #3527.
A filter type that could specify a start index and an end index, and pass that filter through to test adapters.
Test adapters could implement this and skip/batch as appropriate. All the testing platform needs to do is pass through a new filter type with the start/end indexes on it.
This would enable users/build systems to run batches of tests on different processes/agents to speed up test runs using parallelism.
Logic could be as follows:
--dotnet run --count-tests
500
dotnet run --batch-filter 0 99
dotnet run --batch-filter 100 199
dotnet run --batch-filter 200 299
dotnet run --batch-filter 300 399
dotnet run --batch-filter 400 499
public sealed class BatchFilter : ITestExecutionFilter
{
public required int StartIndex { get; init; }
public required int EndIndex { get; init; }
}
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read this issue alongside #3527 and trace how the testing platform passes execution filters to test adapters. Check the command-line handling for --batch-filter and the adapter filter interfaces first. Done means the platform accepts start and end indexes, forwards them to adapters, and supports the example batch invocations without breaking existing filters.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- cli, testing
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100