排除在IntellIJ中运行的测试

时间:2012-10-27 21:29:48

标签: java maven junit intellij-idea

在IntelliJ IDEA Ultimate中排除某些测试是不是可以吗?我想在IntelliJ中运行单元测试但排除集成测试。我用*IT.java命名集成测试,因此Maven故障安全插件可以单独测试它们。

3 个答案:

答案 0 :(得分:100)

JUnit运行配置中将Test kind设置为模式,指定以下正则表达式作为模式:

^(?!.*IT$).*$

它与班级名称匹配,因此您无需匹配.java扩展名。如果类名使用negative lookaheadIT结尾,则正则表达式将不匹配。

ignore tests ending with IT

答案 1 :(得分:4)

使用JUnit5,您现在可以标记您的测试,例如:@Tag("integration-test")

此外,鉴于IntelliJ现在也支持JUnit5,您可以创建 JUnit测试配置并选择测试种类Tags (JUnit5)

要排除让我们说“集成测试”,您只需指定为标记: !integration-test,IntelliJ将运行除integration-test标记的所有JUnit5测试。

答案 2 :(得分:3)

我会将它们分成不同的包装。毕竟他们正在做不同的事情。然后,您可以按包运行测试。 This链接详细说明了如何执行此操作。