Test splitting is a feature provided by CircleCI to optimize testing times. Splitting by historical timing data distributes tests most evenly across all parallel executors.
circleci tests split --split-by=timings can output the following warning:
Error reading historical timing data: file does not exist
Why It Happens and How To Fix It
This can happen for several reasons including, but not limited to:
- The job parallelism is set to 1. Parallelism needs to be set to at least 2 to generate and attach historical timing data.
- The test splitting job has not had a successful test run that generated the appropriately formatted test results file.
- The test results files are not stored via store_test_results.