我编写了一个用于运行多个测试用例的多个JUnit测试套件。(多个JUnit测试,如AllTest1.java/AllTest2.java是我的web项目的要求)
现在,我希望一次运行我的多个测试套件类(AllTest1.java/AllTest2.java)意味着在相同的构建时间..为此我使用了maven-surefire-plugin但是无法同时执行我已经使用了很多逻辑来执行但没有成功:( ..有没有办法同时执行两个测试套件。
任何帮助将不胜感激。
这是我目前的maven-surefire-plugin配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.8.1/version>
<configuration>
<includes>
<include>**/AllTests1.java</include>
</includes>
<excludes>
<exclude>**/AllTests2.java</exclude>
</excludes>
</configuration>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
<execution>
<id>verify</id>
<goals>
<goal>verify</goal>
</goals>
</execution>
答案 0 :(得分:3)
这看起来确实像集成测试和单元测试或两者的组合。出于这样的目的,我建议使用maven-failsafe-plugin来运行应该遵循naming schema的集成测试:
<includes>
<include>**/IT*.java</include>
<include>**/*IT.java</include>
<include>**/*ITCase.java</include>
</includes>
此外,通常的单元测试将由maven-surefire-plugin执行,该naming schema应遵循以下{{3}}:
<includes>
<include>**/*Test*.java</include>
<include>**/*Test.java</include>
<include>**/*TestCase.java</include>
</includes>
此外,您应该避免使用测试套件,因为基于命名模式,如果它是单元测试或集成测试,则可以区分它。
更改为上述架构后,您可以按
运行单元测试mvn test
使用以下命令运行集成测试:
mvn verify