排除在 IntellIJ 中运行的测试

问题描述 投票:0回答:4

IntelliJ IDEA Ultimate 中是否没有排除某些测试的选项?我想在 IntelliJ 中运行单元测试,但排除集成测试。我用

*IT.java
命名集成测试,以便 Maven 故障安全插件可以将它们与单元测试分开运行。

java maven junit intellij-idea
4个回答
137
投票

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

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

它与类名匹配,因此您不需要匹配

.java
扩展名。如果类名以
IT
结尾,使用 负向前瞻,则正则表达式将不匹配。

ignore tests ending with IT


21
投票

使用 JUnit5,您现在可以标记您的测试,例如:

@Tag("integration-test")

此外,考虑到 IntelliJ 现在也支持 JUnit5,您可以创建一个 JUnit 测试配置并选择 测试种类

Tags (JUnit5)

要排除“集成测试”,您只需指定为标签:

!integration-test
,IntelliJ 将运行所有 JUnit5 测试,除了标有
integration-test
的测试。


4
投票

我会将它们分开,因为它们位于不同的包中。毕竟他们在做不同的事情。然后您可以按包运行测试。 链接详细介绍了如何执行此操作。


0
投票

对于 IntelliJ 的现代版本 (2024),请在此处查看以通过 JUnit 标签包含或排除:

Select Tags from type of resource dropdown

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.