Bellwether

Quickstart

Install the CLI, record one full run and make your first selection. About fifteen minutes plus the length of your suite.

Bellwether is one binary and two lines in your pipeline. Until it has recorded a full run it selects every test, so you can install it on a Friday afternoon without changing what your team sees.

Install the CLI

curl -sSL https://get.bellwether.example | sh
bellwether login

The binary is about 14 MB and has no runtime dependencies. login opens a browser to link the CLI to your account; in CI, set BELLWETHER_TOKEN instead.

Record the first map

Run your full suite once with the recorder attached. Do it on a branch, out of everybody’s way:

bellwether record -- bundle exec rspec

Anything after -- is your normal test command. The run takes as long as your suite plus about four percent. When it finishes you will see how many tests were mapped and how many files the average test loads.

Make a selection

On any branch with changes:

bellwether select --base main
bundle exec rspec $(cat .bellwether/selected)

The first command writes the selected test files to .bellwether/selected and the skip report beside it. The second is your existing command, reading that file instead of a glob.

Next