我有一组集成测试,需要按特定顺序运行。所以我在同一个包内创建了一个 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 类被完全忽略了。知道如何解决这个问题吗?
最佳答案
我在 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>
关于java - 为什么不运行套件类,而是运行其他测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33776081/