Maven SurefireとMaven Failsafeプラグインの違いは何ですか?
私はすべてのウェブを検索しましたが、答えが得られませんでした。
誰かが例を助けてください。
簡単に言えば、フェイルセーフプラグインは統合テストを実行するように設計されており、Surefireは単体テストを実行する。
これは Maven FAQ でさらに説明されています:
maven-surefire-plugin
はunit testsを実行するために設計されており、いずれかのテストが失敗すると、すぐにビルドが失敗します。
maven-failsafe-plugin
は統合テストを実行するために設計されており、実際にテストを実行してテストの失敗がある場合はビルドの失敗を分離します。名前「failsafe」が選択されたのは、それが確実なファイアの同義語であり、失敗した場合に安全な方法でそうすることを意味するためです。
Failsafe Pluginには2つの目標があります:
failsafe:integration-test
アプリケーションの統合テストを実行します。failsafe:verify
は、アプリケーションの統合テストに合格したことを検証します。
こちらもご覧ください:
https://maven.Apache.org/surefire/maven-failsafe-plugin/ から、SurefireとFailsafeの違いは失敗する方法だと思います。
Surefireプラグインを使用してテストを実行している場合、テストが失敗すると、ビルドは統合テストフェーズで停止し、統合テスト環境は正しく破棄されません。
フェイルセーフプラグインは、アプリケーションの統合テストを実行するために、ビルドライフサイクルの統合テストおよび検証フェーズで使用されます。フェイルセーフプラグインは、統合テストフェーズ中にビルドに失敗しないため、統合テスト後フェーズを実行できます。
私の国では、このFAQにアクセスするために「maven failsafe maven surefire」を検索したときの2番目のgoogle結果: https://maven.Apache.org/surefire/maven-failsafe-plugin/ which :
"フェイルセーフプラグインは統合テストを実行するように設計されており、Surefireプラグインは単体テストを実行するように設計されています。"