为什么没有运行Suite类而是运行其他测试

时间:2015-11-18 09:24:12

标签: java maven testing

我有一组集成测试,我需要按特定顺序运行。所以我在同一个包中创建了一个BlahSuite.java,并在那里指定了类的顺序。和注释如下

@RunWith(Suite.class)
@Suite.SuiteClasses({

我将插件添加到pom中,如下所示

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-failsafe-plugin</artifactId>
    <version>2.9</version>
    <configuration>
      <includes>
        <include>**/*Suite.java</include>
      </includes>
    </configuration>
    <executions>
      <execution>
        <id>integration-test</id>
        <goals>
          <goal>integration-test</goal>
        </goals>
      </execution>
      <execution>
        <id>verify</id>
        <goals>
          <goal>verify</goal>
        </goals>
      </execution>
    </executions>
</plugin>

但是测试仍然以不同的顺序触发,感觉套件类完全被忽略了。知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我在Stackoverflow问题Run Junit Suite using Maven Command

找到了答案

所以我的最终设置是我刚刚删除了failafe插件并添加了以下内容,

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-surefire-plugin</artifactId>
  <configuration>
  <includes>
    <include>**/*Suite.class</include>
  </includes>
  </configuration>
</plugin>