TL;DR
Go 向けのミューテーションテストツール。マイクロサービス程度の小〜中規模の Go モジュールを対象にしている。
なぜ必要か
コードを意図的に書き換え、テストがその変更を検出できるかを確かめることで、テストカバレッジだけでは分からないテストの質を測れる。テストスイートの検証、TDD の支援、CI での品質ゲートとしての利用が想定されている。
仕組み
変異を入れられる箇所を探し、テストでカバーされている箇所だけを変異させてテストを実行する。プルリクエストで変更した部分だけを対象にすることもできる。設定は YAML で書く。
注意点
非常に大きな Go モジュールには向かず、実行に数時間かかることがある。0.x.x のリリースなので、マイナーバージョンの間でも設定のフラグやファイルが変わることがある。