How to exclude all JUnit4 tests with a given category using Maven surefire?

后端 未结 1 1707
遥遥无期
遥遥无期 2020-12-08 11:04

I intend on annotating some of my JUnit4 tests with an @Category annotation. I would then like to exclude that category of tests from running on my Maven builds.

I s

相关标签:
1条回答
  • 2020-12-08 11:38

    You can do this as follows:

    Your pom.xml should contain the following setup.

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

    If you want regex support just use

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

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

    If you want to use Category annotation, you need to do the following:

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

    In your maven configuration, you can have something like this

    <configuration>
      <excludedGroups>com.myproject.annotations.Exclude</excludedGroups>
    </configuration>
    
    0 讨论(0)
提交回复
热议问题