如何一次执行多个JUnit测试套件..!

时间:2013-04-16 12:22:56

标签: maven junit

我编写了一个用于运行多个测试用例的多个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>

1 个答案:

答案 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