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