我如何让maven根据变量或构建配置文件忽略特定的测试用例?
我有一些涉及连接到LDAP服务器的测试用例。如果我使用特定的配置文件或maven变量构建到命令中,我将如何使这些测试用例被忽略?我不想忽略所有测试用例。
答案 0 :(得分:1)
您的解决方案似乎分为两部分:(1)通过Maven通知流程它在给定配置中运行,以及(2)根据该配置有条件地运行测试。
第一点很简单:使用-D
开关传递系统属性,如this SO answer所示,确认您需要使用系统属性在系统属性中传递系统属性作为参数surefire argLine property:
mvn -DargLine="-DldapTests=disable" test
对于第二种情况,您可以在JUnit中使用新的assumeTrue
和相关假设API,如this other SO answer中所述。
@Before
public void checkLdapTests() {
assumeThat(System.getProperty("ldapTests"), is(not(equalTo("disable"))));
}