web-dev-qa-db-ja.com

Maven SurefireとMaven Failsafeプラグインの違いは何ですか?

Maven SurefireとMaven Failsafeプラグインの違いは何ですか?

私はすべてのウェブを検索しましたが、答えが得られませんでした。

誰かが例を助けてください。

84
bugCracker

簡単に言えば、フェイルセーフプラグインは統合テストを実行するように設計されており、Surefireは単体テストを実行する

これは Maven FAQ でさらに説明されています:

  • maven-surefire-pluginunit testsを実行するために設計されており、いずれかのテストが失敗すると、すぐにビルドが失敗します。

  • maven-failsafe-plugin統合テストを実行するために設計されており、実際にテストを実行してテストの失敗がある場合はビルドの失敗を分離します。

    名前「failsafe」が選択されたのは、それが確実なファイアの同義語であり、失敗した場合に安全な方法でそうすることを意味するためです。

    Failsafe Pluginには2つの目標があります:

こちらもご覧ください:

102
kenorb

https://maven.Apache.org/surefire/maven-failsafe-plugin/ から、SurefireとFailsafeの違いは失敗する方法だと思います。

Surefireプラグインを使用してテストを実行している場合、テストが失敗すると、ビルドは統合テストフェーズで停止し、統合テスト環境は正しく破棄されません。

フェイルセーフプラグインは、アプリケーションの統合テストを実行するために、ビルドライフサイクルの統合テストおよび検証フェーズで使用されます。フェイルセーフプラグインは、統合テストフェーズ中にビルドに失敗しないため、統合テスト後フェーズを実行できます。

19
Jonas Wolf

私の国では、このFAQにアクセスするために「maven failsafe maven surefire」を検索したときの2番目のgoogle結果: https://maven.Apache.org/surefire/maven-failsafe-plugin/ which :

"フェイルセーフプラグインは統合テストを実行するように設計されており、Surefireプラグインは単体テストを実行するように設計されています。"

5
JBA