Shard slow pytest suites by historic timings before CI bottlenecks pile up with pytest-split
Lets an agent split a large pytest suite into timing-balanced shards so parallel CI lanes finish faster and with less variance.
Prerequisites
Python, pytest, pytest-split
Installation
Use the upstream install or setup path that matches your environment:
- pip install pytest-split
Requirements and caveats from upstream:
Basic usage or getting-started notes:
For example, some test suites may be fragile considering the order in which the tests are executed.
sh
First we have to store test durations from a complete test suite run.
Extracted from upstream docs: https://raw.githubusercontent.com/jerry-git/pytest-split/HEAD/README.md