MobileNativeFoundation / bluepill

Bluepill is a reliable iOS testing tool that runs UI tests using multiple simulators on a single machine
BSD 2-Clause "Simplified" License
3.19k stars 232 forks source link

Splitting test bundles based on estimates test execution times #407

Closed ravimandala closed 4 years ago

ravimandala commented 4 years ago

Often test bundles that take too long to execute become long pole or bottleneck holding up the Bluepill completion for longer than what is ideally needed. So, splitting the test bundles based on the time estimates of all tests in each split could increase the concurrency, re-gain the lost concurrency opportunities and complete the testing as quickly as possible.

The splitting strategy here is to make sure no single bundle takes longer than the time taken by all bundles divided by the maximum number of concurrent simulators allowed.

Please review. \cc @ob, @chenxiao0228

ravimandala commented 4 years ago

@chenxiao0228 @ob @oliverhu Can you please review this? Thanks in advance.

ravimandala commented 4 years ago

@ob can you please review this?

ravimandala commented 4 years ago

Added comments, description in the PR and support for no_split list.