を、私は(私は*Test.java
と名付けた)単位にテストを分け、と統合(*IT.java
)、私はテストを実行するために使用された、それぞれ、SurefireとFailsafeのプラグインポリシーに従っています。もちろん、IT部門はUTよりもはるかに低速です。
これは、簡単なコマンドでテストのグループランニングのパワー与える:UTのためのmvn test
とのUTとその両方のためのmvn integration-test
だけでなく、mvn install -DskipITs
でのみITはをスキップの可能性について。
環境に関する問題(つまり、データベースの起動に時間がかかりすぎる、メッセージブローカーが早すぎてシャットダウンする、またはメッセージが遅すぎるなど)が原因でユニットテストよりも頻繁に障害が発生するため、等々)。デフォルトでは、「検証」目標を明示的に指定しない限り、フェイルセーフテストの失敗はビルドを強制終了しません。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
<!-- Uncomment this in order to fail the build if any integration test fail -->
<!-- execution> <id>verify</id> <goals><goal>verify</goal></goals> </execution -->
</executions>
</plugin>