当前位置: 首页 > 知识库问答 >
问题:

如何使用Maven surefire排除给定类别的所有JUnit4测试?

权浩阔
2023-03-14

我打算用@Category注释来注释我的一些JUnit4测试。然后,我想将这类测试排除在我的Maven版本上运行。

我从Maven文档中看到,可以指定要运行的测试类别。我想知道如何指定一类不运行的测试。

谢谢

共有1个答案

颜志学
2023-03-14

您可以按如下方式执行:

你的pom。xml应包含以下设置。

<configuration>
   <excludes>
       <exclude>**/TestCircle.java</exclude>
        <exclude>**/TestSquare.java</exclude>
   </excludes>
</configuration>

如果你想要正则表达式支持,只需使用

<excludes>
    <exclude>%regex[.*[Cat|Dog].*Test.*]</exclude>
</excludes>

http://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html

如果要使用类别注释,需要执行以下操作:

@Category(com.myproject.annotations.Exclude)
@Test
public testFoo() {
   ....
}

在你的maven配置中,你可以有这样的东西

<configuration>
  <excludedGroups>com.myproject.annotations.Exclude</excludedGroups>
</configuration>
 类似资料: