Keep your unit tests fast
Unit tests tend to get slower with time, wasting a lot of developer hours. BlueRacer helps you keep them fast by posting a unit test performance summary on every Pull Request.
Prevent slow tests from creeping into your codebase and save heaps of developer as well as machine time.
Frequently asked questions
Can’t find the answer you’re looking for? Reach out to our team.
- How does BlueRacer work?
- Your CI runs
`bash <(curl -s https://app.blueracer.io/upload)`to upload the
`junit.xml`test report file to BlueRacer. BlueRacer then analyzes the report, compares it with previous runs, and shows you the results!
- Does BlueRacer work with my CI provider, such as GitHub Actions, CircleCI, TravisCI, GitLab, etc.?
- Yes, any CI that can download and run a bash script is supported.
- Does BlueRacer work with my test runner, such
- Yes, any test runner than can export test results to a
`junit.xml`file is supported.
- But CI runners are virtual machines that are sometimes slow?
- Yup, they are. That is why, by default, the thresholds for
BlueRacer to report slow tests are quite conservative. Additionally, there is a number of things that can
be done for less variance in test durations:
- make sure your tests don't do any network I/O using pytest-network and similar tools,
- use self-hosted runners on bare-metal machines that you control,
- wait for new releases of BlueRacer that will add test performance insights beyond simple duration measurement.
- Why not measure duration of the entire CI step?
- See our thoughts about CI virtual machine variability above. The
wider the measurement, the greater the variability.
Additionally, most CI providers already provide insights into durations of steps.
- Can I configure my own thresholds?
- Yep, read Configuring Thresholds to learn how.
- Can BlueRacer block Pull Request merge in case of a slow test?
- Sure can, read our blog post for details.
- I love it, but how much does it cost?
- Free forever for open source repos & personal use. A few bucks for organizations using private repos. See GitHub Marketplace for pricing plans.