Java “选择权”;标签(JUnit 5)";不会出现在IntelliJ 2018.3中

Java “选择权”;标签(JUnit 5)";不会出现在IntelliJ 2018.3中,java,intellij-idea,junit5,Java,Intellij Idea,Junit5,我正在Maven项目中使用JUnit5.1.0。我有IntelliJ IDEA 2018.3.2(社区版)。我想使用@Tag注释来描述我的测试,并能够根据这些测试进行过滤 关键是在编辑配置|配置|测试类中,没有我在许多示例中看到的“Tag(junit5)”选项。仅提供“标签”选项 当我使用上面提到的选项时,我将字段标记表达式设置为“slow”(不带引号)(我有一个测试已经标记为@Tag(“slow”)) 关键是没有找到任何测试(测试标记为@test) pom依赖 <dependency&g

我正在Maven项目中使用JUnit5.1.0。我有IntelliJ IDEA 2018.3.2(社区版)。我想使用@Tag注释来描述我的测试,并能够根据这些测试进行过滤

关键是在编辑配置|配置|测试类中,没有我在许多示例中看到的“Tag(junit5)”选项。仅提供“标签”选项

当我使用上面提到的选项时,我将字段标记表达式设置为“slow”(不带引号)(我有一个测试已经标记为@Tag(“slow”))

关键是没有找到任何测试(测试标记为@test)

pom依赖

<dependency>
  <groupId>org.junit.jupiter</groupId>
  <artifactId>junit-jupiter-engine</artifactId>
  <version>5.1.0</version>
  <scope>test</scope>
</dependency>

org.junit.jupiter
朱尼特木星发动机
5.1.0
测试

首先,我希望有“Tags(junit5)”选项,但我没有。然后,我希望选择“Tags”并给出表达式“slow”,将执行testNotBlank测试。

您可以使用以下测试配置执行标记测试:

可以使用以下步骤创建此文件:

  • 运行/调试配置>添加新配置>Junit
  • 选择test kind
    Tags
    和各种配置,了解您希望如何执行。e、 g.我正在执行标有“fast”N次的测试

  • 其中,测试类别包括:

    public class TaggedTests {
    
        @Test
        @Tag(value = "slow")
        public void sample() {
            System.out.println("slow-test");
        }
    
    
        @Test
        @Tag(value = "fast")
        public void fastSample() {
            System.out.println("fast-test");
        }
    }
    
    和执行产出:

    fast-test 
    fast-test... 10 times
    

    它不起作用的原因是我使用了JUnit4中的@Test注释,而不是JUnit5中的注释。因此,即使在pom中导入JUnit Vintage,过滤也无法工作

    fast-test 
    fast-test... 10 times