問題タブ [mutation-testing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
296 参照

angular - Stryker/Angular6: テンプレート アプリケーションの標準 @Component からミュータントを削除します

Angular 6 で基本的なテンプレート アプリケーションを作成し、 Stryker Mutation テストを実行しようとしています。基本的なホームページ:

このページの基本的なテスト ファイルがあります。

これは成功し、ホームページが作成されることをテストしますが、 ストライカー変異エラー.

基本的なホームページでは、@Component に 3 つのフィールドがあり、それらはすべてリテラル テキストであるため、ミュータント サバイバーを生成します。これらのミュータント生存者を殺すテストの書き方がわかりません。

条件を処理するためのテストを記述できない場合、代替手段としてコードのセクションを無視する方法が Stryker にあるようには見えません。

0 投票する
1 に答える
2156 参照

java - Intellij IDEA で Pitest レポートを生成できませんでした

IntelliJ IDEA (プラグイン: https://plugins.jetbrains.com/plugin/7119-pit-mutation-testing-idea-plugin )で突然変異テストに Pitest を使用しています。すべてのテスト ケースを実行した後、実行の最後に次のメッセージが表示されました。

スレッド「メイン」org.pitest.help.PitHelpError での例外: ライン カバレッジの計算時に、すべてのテストが突然変異なしではパスしませんでした。ミューテーション テストにはグリーン スイートが必要です。詳細については、 http://pitest.orgを参照してください。 org.pitest.coverage.execute.DefaultCoverageGenerator.verifyBuildSuitableForMutationTesting(DefaultCoverageGenerator.java:109) で org.pitest.coverage.execute.DefaultCoverageGenerator.calculateCoverage(DefaultCoverageGenerator.java:94) で org.pitest.coverage.execute.DefaultCoverageGenerator.calculateCoverage (DefaultCoverageGenerator.java:49) org.pitest.mutationtest.tooling.MutationCoverage.runReport(MutationCoverage.java:115) で org.pitest.mutationtest.tooling.EntryPoint.execute(EntryPoint.java:117) で org.pitest. Mutationtest.tooling.EntryPoint.execute(EntryPoint.java:49) org.pitest.mutationtest.commandline.MutationCoverageReport.runReport(MutationCoverageReport.java:87) で org.pitest.mutationtest.commandline.MutationCoverageReport.main(MutationCoverageReport.java: 45)

プロセスは終了コード 1 で終了しました ブラウザでレポートを開く

ファイルが生成されていないため、ブラウザでレポートを開くことができません。

私はすでに Pitest の設定を編集しています:

私は何か見落としてますか?

ありがとう

0 投票する
1 に答える
428 参照

mutation-testing - PITEST インクリメンタル分析でローカル ハッシュ ファイルが見つかりません

現在 PITest を試していますが、これまでのところ正常に動作しています。ただし、これは非常に遅く、これまでの唯一の解決策は、インクリメンタル分析を使用することです。これにより、速度が遅くなる可能性があります。ドキュメントに記載されているように設定しようとしました。これが私の構成です:

ただし、実際には、PITest が historyInput と historyOutput を考慮に入れていることはわかりません。代わりに、私が見ているログでは

さまざまな設定をたくさん試しましたが、どれもうまくいかないようです。足りないものはありますか?

アップデート

最終的に、プラグイン定義は親 pom からのものであり、それを継承する子 pom で部分的にオーバーライドできることが判明しました。

0 投票する
2 に答える
3958 参照

java - ピット ミューテーション - if ( x !=null ) return null そうでなければ、新しい RuntimeException をスローする

カスタムオブジェクトを返すメソッドがあります

その単体テストは、getTheObject()メソッドによって返されたオブジェクトが null でないことを確認します

そしてテストパス。

Pitestでミューテーションテストを実行するSURVIVEDと、次のような1 つのミューテーションが表示されます。

KILL問題は、この問題とその突然変異を取り除くために、単体テストをどのようにすべきかということです