Verwenden von JUnit Categories mit dem Maven Failsafe-Plugin
Ich verwende JUnit Categories, um Integrationstests von Unit-Tests zu trennen. Die Konfiguration des Surefire-Plugins funktioniert - es überspringt die mit meinem Marker-Interface IntegrationTest kommentierten Tests.
Das Failsafe-Plugin wählt die Integrationstests jedoch nicht aus. Ich habe sogar versucht, den junit47-Provider anzugeben, aber in der Phase des Integrationstests werden keine Tests ausgeführt.
Hier ist das pom.xml-Fragment:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.12</version>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
</executions>
<configuration>
<groups>com.mycompany.test.IntegrationTest</groups>
<excludedGroups>com.mycompany.test.UnitTest</excludedGroups>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-junit47</artifactId>
<version>2.12</version>
</dependency>
</dependencies>
</plugin>
Hier ist der ausfallsichere Teil des Protokolls:
[INFO] --- maven-failsafe-plugin:2.12:integration-test (default) @ MyProject.war ---
[INFO] Failsafe report directory: /home/stoupa/MyProject/war/target/failsafe-reports
[INFO] Using configured provider org.apache.maven.surefire.junitcore.JUnitCoreProvider
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Concurrency config is parallel='none', perCoreThreadCount=true, threadCount=2, useUnlimitedThreads=false
Results :
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
Ist der im Protokoll angezeigte Anbieter org.apache.maven.surefire.junitcore.JUnitCoreProvider der richtige?