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; }
}
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-testsdotnet run --batch-filter 0 99dotnet run --batch-filter 100 199dotnet run --batch-filter 200 299dotnet run --batch-filter 300 399dotnet run --batch-filter 400 499