Quick Start
Install Gooze, preview what will be mutated, run mutation testing, then view reports.
Installation
Install the latest gooze binary to your Go bin directory:
go install gooze.dev/pkg/gooze@latestThis command downloads Gooze and installs it. Next, verify:
gooze version(Optional) Create a config file
Gooze can read gooze.yaml. This is useful in CI and for shared settings.
gooze initThis only creates the file. It does not run tests.
List files and mutation counts
Preview which files will be mutated and how many mutations apply.
gooze list ./...Exclude directories/files using regex (repeat the flag as needed):
gooze list -x '^vendor/' -x '^internal/mocks/' ./...If you get 0 mutations, first check you are running from your module root (where go.mod is).
Run mutation testing
Execute mutation testing across the target paths.
gooze run ./...Make it faster
Run multiple workers in parallel:
gooze run -p 4 ./...Force a full re-run
If you suspect cached results are reused:
gooze run --no-cache ./...Reports
By default, Gooze writes mutation reports to .gooze-reports (override with -o/--output).
View the last run:
gooze viewOr point view at an explicit directory:
gooze view -o .gooze-reportsIn the interactive UI you can usually:/ to filter,enter to open the diff, and q to quit.
(Optional) Shard in CI
Sharding splits work across CI jobs. Example with 3 jobs:
gooze run -s 0/3 ./...gooze run -s 1/3 ./...gooze run -s 2/3 ./...After all jobs finish, merge and view:
gooze mergegooze view