Java @标记(“myTestName”)不使用Groovy测试类

Java @标记(“myTestName”)不使用Groovy测试类,java,unit-testing,groovy,spock,junit5,Java,Unit Testing,Groovy,Spock,Junit5,我在项目中进行了java和groovy测试。我想把测试分成几个小组 为此,我尝试在类级别上使用@Tag注释 对于java类,它可以完美地工作,但Groovy类似乎根本不受@Tag注释的影响 Junit版本:JUnitJupiter api:5.2.0 Spock版本1.1-groovy-2.4 Groovy版本:Groovy all:2.4.15 Java版本:8 package com.myproject.service import org.junit.jupiter.api.Tag im

我在项目中进行了java和groovy测试。我想把测试分成几个小组

为此,我尝试在类级别上使用@Tag注释

对于java类,它可以完美地工作,但Groovy类似乎根本不受@Tag注释的影响

Junit版本:JUnitJupiter api:5.2.0

Spock版本1.1-groovy-2.4

Groovy版本:Groovy all:2.4.15

Java版本:8

package com.myproject.service

import org.junit.jupiter.api.Tag
import spock.lang.Specification

@Tag("MyTestGroup")
class MyTest extends Specification {

    def 'test me'() {
        expect:
        1 == 5
    }
}
在build.gradle中:

test {
    useJUnitPlatform {
        excludeTags 'MyTestGroup'
    }
}

tasks.register("MyTestGroup", Test) {
    useJUnitPlatform {
        includeTags 'MyTestGroup'
    }
    check.dependsOn it
    MyTestGroup.shouldRunAfter test
}
我使用:/gradlew check


有人知道如何使@Tag与Groovy文件一起工作吗?

请将整个
MyTest.Groovy
文件包括在导入和所有文件中。但是我应该将其包括在哪里?我现在没有指定具体的测试。我该把它放在哪里?哦,你是说我的档案。好的,就我所知,Spock1只适用于JUnit4;您可能需要改为尝试
@Category
。请将整个
MyTest.groovy
文件包含在导入和所有内容中。但我应该将其包含在哪里?我现在没有指定具体的测试。我该把它放在哪里?哦,你是说我的档案。好的,就我所知,Spock1只适用于JUnit4;您可能需要改为尝试
@Category