1. 概要

この要点チュートリアルでは、Mavenビルドツールのコアプラグインの1つであるfailsafeプラグインについて説明します。

その他のコアプラグインの概要については、この記事を参照してください。

2. プラグインの目標

フェイルセーフプラグインはプロジェクトの統合テストに使用されます。2つの目標があります。

  • 統合テスト–統合テストを実行します。 この目標は、デフォルトで統合テストフェーズにバインドされています
  • verify –統合テストに合格したことを確認します。 この目標は、デフォルトでverifyフェーズにバインドされています

3. 目標の実行

このプラグインは、surefireプラグインと同じようにテストクラスでメソッドを実行します。 同様の方法で両方のプラグインを構成できます。 ただし、それらの間にはいくつかの重要な違いがあります。

まず、スーパーpom.xmlに含まれているsurefireこの記事を参照)とは異なり、failsafeプラグインとその目標は pom.xml で明示的に指定して、ビルドライフサイクルの一部にします。

<plugin>
    <artifactId>maven-failsafe-plugin</artifactId>
    <version>2.21.0</version>
    <executions>
        <execution>
            <goals>
                <goal>integration-test</goal>
                <goal>verify</goal>
            </goals>
            <configuration>
                ...
            </configuration>
        </execution>
    </executions>
</plugin>

このプラグインの最新バージョンはこちらです。

次に、 failsafe プラグインが実行され、さまざまな目標を使用してテストが検証されます。 統合テストフェーズでのテストの失敗は、ビルドをすぐに失敗させないため、統合後テストのフェーズを実行できます。ここでクリーンアップ操作が実行されます。

失敗したテストがある場合は、統合テスト環境が適切に破棄された後のverifyフェーズでのみ報告されます。

4. 結論

この記事では、 failsafe プラグインを紹介し、テストに使用されるもう1つの人気のあるプラグインであるsurefireプラグインと比較しました。

このチュートリアルの完全なソースコードは、GitHubにあります。