Since T378478, tests are allocated to split_groups in alphabetical order by filename rather than round-robin. This creates less time-balanced groups - the tests for some extensions take longer than for others, and the slower extensions then slow down the split_group that they are included in.
The test splitting implementation has support for processing timing data for tests to create a more balanced distribution. Use this data when building the split_groups.
Acceptance Criteria
- At least a Proof of concept for an approach to this should be complete
- Data about the execution time of all tests is generated
- Generated data is stored and made available for unauthenticated download by test runners
- Parallel test runners fetch and process the execution time data to create more time-balanced split_groups.
Notes:
- As indicated below, this appears to be somewhat of a spike task. Therefore, it will be wise to set a timebox while picking this task up
- TIMEBOX: 24 Hrs.
