有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java为什么不运行套件类而运行其他测试

我有一组集成测试,需要按特定顺序运行。因此,我在同一个包中创建了一个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>

但测试仍然以不同的顺序启动,感觉好像完全忽略了Suite类。你知道怎么解决这个问题吗


共 (1) 个答案

  1. # 1 楼答案

    我在Stackoverflow问题Run Junit Suite using Maven Command找到了答案

    所以我的最终设置是我刚刚删除了故障保护插件并添加了以下内容

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