Buildkite Test Engine Client (bktec) is an open source tool to orchestrate your test suites. It uses your Buildkite Test Engine suite data to intelligently partition and parallelise your tests.
Previously, Split By Example is implemented against files that take slower than 3 minutes. To extend the functionality of Split By Example for better slow file detection, as well as to support test quarantining in the future, we want to have the server determine which files need to be split by example.
Before
Client sends request POST /test_files endpoint to get duration for all files
Client finds files slower than 3 minutes
Client executes dry run for those files
Client sends examples within those files along with other files to create test plan
After
Client sends request POST /test_plan/filter_tests endpoint to filter files that will be Split by Example
Client executes dry run for those files
Client sends examples within those files along with other files to create test plan
Testing
Do integration test with BUILDKITE_SPLITTER_SPLIT_BY_EXAMPLE=true against a test suite that has files longer than 3 minutes to run. The files that takes longer than 3 minutes should be split by example.
Description
Previously, Split By Example is implemented against files that take slower than 3 minutes. To extend the functionality of Split By Example for better slow file detection, as well as to support test quarantining in the future, we want to have the server determine which files need to be split by example.
Before
POST /test_files
endpoint to get duration for all filesAfter
POST /test_plan/filter_tests
endpoint to filter files that will be Split by ExampleTesting
Do integration test with
BUILDKITE_SPLITTER_SPLIT_BY_EXAMPLE=true
against a test suite that has files longer than 3 minutes to run. The files that takes longer than 3 minutes should be split by example.