32

別の質問で、ミューテーションテストが実際に役立つかどうか尋ねました。満足できる答えが得られなかったので、自分で現在のツールを確認したいと思います。したがって、現在の既存のミューテーションテストフレームワークについての概要が必要です。それらのどれが最も使用可能であり、なぜですか?

  • 私はJavaでプログラミングしているので、Javaツールを好みますが、さまざまな言語の興味深いフレームワークを検討するリスクがあります。
  • 自動ビルドプロセスに統合したいので、コマンドラインから実行できるツールを使用したいと思います。
4

11 に答える 11

17

Maven プラグインまたはコマンド ライン インターフェイスを介してビルドにフックできるPITもあります。

ミューテーションとライン カバレッジを組み合わせた他の利用可能なツールよりもはるかに優れたレポートを提供します。また、Jester などの Java 用のソース ベースのツールよりもかなり高速に実行され、Jumble の約 2 倍の速度で実行されます。

Jumble や Javalanche とは異なり、すべての主要なモッキング フレームワーク (Mockito、JMock、EasyMock、PowerMock、JMockit) でも動作します。

(開示私は著者です)。

于 2011-03-01T22:30:21.390 に答える
16

古いスレッドであることは知っていますが、それでも質問に対する回答です。私は何人かの友人と協力して、NinjaTurtles というオープン ソースの .NET ミューテーション テスト フレームワークに取り組んでいます。このフレームワークは、CodePlexおよびNugetにあります。主なプロジェクトのウェブサイトはこちらです。

于 2012-04-23T14:45:16.800 に答える
10

私は2つのフレームワークしか知りませんが、どちらもJava用です:)

恐れ入りますが、どちらも使用していません。

于 2008-10-29T12:03:08.117 に答える
10

CREAM は C#/.Net 用のツールです http://galera.ii.pw.edu.pl/~adr/CREAM/index.php

于 2011-06-15T19:29:09.120 に答える
5

Ruby にはHeckleと、 Boo_hissと呼ばれる新参者がいます。

于 2009-02-13T11:17:32.697 に答える
3

私は Jester (実際のソース コード) を調べましたが、あまり多くのミューテーションをサポートしていないように思えます。これらのミューテーションが指定されているファイルがあります。上記については間違っているかもしれませんが、コマンド ラインからのツールの起動と、小さな GUI フィードバック インターフェースの組み合わせが気に入らなかったことは間違いありません。JUnit が IDE の外部で実行するときのように、コマンド ラインでフィードバックを提供してみませんか?

ジャンブルは別のものです:)。シンプルなコマンド ライン インターフェースを備えており、Eclipse プラグインも付属しています。フィードバックはすべてコンソール内のテキストです。私はこのツールに満足しており、プロジェクトの継続的インテグレーションに追加する ANT ターゲットを作成する予定です。

Javalanche も検討していますが、まだ試していません。

数週間後にニュースが届きます。

于 2010-01-28T07:56:10.353 に答える
3

ちょっと興味あるかも。マイクロソフトリサーチ: https://pex4fun.com/

于 2012-10-22T13:46:00.997 に答える
2

MμClipse は JUnit 3 のみをサポートしており、現在はメンテナンスされていません。Jester は手間がかかり、複雑な構成が必要です。plus はもう維持されていません。私が見つけることができる最高のツールは Javalanche です。これについては記事全体を書いています。

于 2012-03-10T10:41:04.503 に答える
2

µJavaを試すことができます。私は使っていませんが、ミューテーション テストはテスト スイートを評価する興味深い方法のようです。

于 2008-10-29T12:13:48.923 に答える
0

Jester はミューテーション用のファイルを提供しますが、それらは制限されています。ある程度、独自のミューテーションをファイルに追加できます。

Jumble と Jester を試してみたところ、Jumble の方がより多くの変異とより優れたドキュメントを提供することがわかりました。さらに、プロジェクト オーナーに電子メールを送信したところ、迅速な対応がありました。Jumble の欠点の 1 つは、BCEL を使用してバイトコードで動作することです。これは、多くの開発者にとって学習曲線のようなものです。

私の会社である State Farm は、Jumble プロジェクトに貢献できる Ant タスクを作成しました。彼らのメーリング リストで読んだ内容によると、他の人たちも Jumble の Ant タスクに取り組んでいます。

私もJavalancheを見ています。終わったら、私が知っていることを喜んで共有します。

于 2010-02-15T15:42:13.233 に答える