私はこのようなインターフェースを持っています:
public interface IntegrationTest {
}
フェイルセーフ プラグインを次のように構成します。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.14</version>
<configuration>
<groups>acme.test.IntegrationTest</groups>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
</executions>
</plugin>
次に、このような統合テストを作成すると
@Category(IntegrationTest.class)
public class ExampleClassIntegrationTest {
@Test
public void slow_and_painful_test() {
このテストは実行されません。
ただし、テストの包含と除外に従ってクラスに名前を付ける場合
**/IT*.java
**/*IT.java
**/*ITCase.java
そのようです:
@Category(IntegrationTest.class)
public class ExampleClassIT {
@Test
public void slow_and_painful_test() {
テストは正常に実行されます。groups-tag を使用するときに、テストに名前を付けて注釈を付ける必要があるのはなぜですか? 何か不足していますか?JUnitの使用に関するドキュメントには、クラス レベルで Category アノテーションを使用できると記載されています。