web-dev-qa-db-ja.com

Jester for Javaのようなミューテーションテストツールの最新の代替品はありますか?

「確かにわかっているのに、なぜテストが良いと思うのですか?時々ジェスターは私のテストが気密であると私に告げますが、時々それが見つける変化は突然のボルトとして来ます。強くお勧めします。" -ケントベック

しかし、stackoverflowに「Jester」というタグすら見当たらない。では、Jesterの最新の置き換えは何ですか? CoberturaCloverなどのツールからコードカバレッジから統計情報を見つける以外に、記述された単体テストが確実であることをどのように確認できますか?

19
Geek

私が知っている限り、ミューテーションテストは、テストスイートの品質を測定するための最適な自動化プロセスであり続けます。道化師のための2つの良い近代的な代替品があります。

http://pitest.org (私は作者です)

https://github.com/david-schuler/javalanche/

それら、道化師、および他のいくつかのシステムの詳細な比較は、こちらから入手できます。

http://pitest.org/Java_mutation_testing_systems/

道化師が離陸しなかった主な理由は、動作が遅く、スケーリングが非常に悪かったためです。

PITとjavalancheはどちらも、同様の方法でこれに対処しようとします。ミューテーションに対してプロジェクトのすべてのテストを盲目的に実行する代わりに、最初にラインカバレッジを収集し、実際にミューテーションにヒットする可能性のあるテストのみを実行します。

PITはまた、他のさまざまな最適化を実行して処理を高速化し、前の分析の結果を再利用して後続の実行の計算コストを大幅に削減するオプションを提供します。

26
henry