我已经配置了 maven-failsafe-plugin 来排除/包括一些测试类别:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<groups>my.company.SomeImportantCategory</groups>
</configuration>
</plugin>
</plugins>
现在我有一个参数化测试,没有用
SomeImportantCategory
注释:
@RunWith(Parameterized.class)
@Category(AnotherCategory.class)
public class SomeTestIT {
@Parameters(name = "{0}")
public static Collection<TestData[]> setUp() throws Exception {
// Loading Some Excel-Sheets. I'm using github.com/fhm84/jexunit
return doSomethingVeryTimeConsuming("with/this/excel-file.xls");
}
}
现在我使用此配置文件运行集成测试。 Maven 确实执行 setUp-Method 来收集测试用例。
你知道如何跳过这个吗? 我可以访问 setUp-Method 并执行一些 Java 魔法,例如读出包含/排除的组(如何?!?)并使用反射跳过
doSomethingVeryTimeConsuming
。
我有完全相同的问题。问题是我用
@Category
标记了测试,但是忘记重建工件并用 mvn failsafe:integration-test failsafe:verify
对旧的测试运行它们...
mvn clean package
解决了我的一切问题。
万一有人在谷歌中发现这个问题,就像我一样:)