首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gradle找不到集成测试、JUnit 5和Spring Boot:找不到给定的测试包括:

Gradle找不到集成测试、JUnit 5和Spring Boot:找不到给定的测试包括:
EN

Stack Overflow用户
提问于 2020-07-12 14:15:36
回答 1查看 755关注 0票数 2

当我运行时:

代码语言:javascript
复制
./gradlew  :integrationTest --tests com.shohidulhaque.whatdoyouthinkauthorizationservice.WhatdoyouthinkauthorizationserviceApplicationTests2 

我得到以下输出:

代码语言:javascript
复制
No tests found for given includes: [com.shohidulhaque.whatdoyouthinkauthorizationservice.WhatdoyouthinkauthorizationserviceApplicationTests2](--tests filter)

我确信我已经正确地设置了build.gradle。

我已经把这个项目上传到github了。它可以在https://github.com/shohidulhaque/integrationTestRepo上找到

如果有人能在这方面提供帮助,我将不胜感激。我正在使用:

Gradle 6.4.1 openjdk版本"11.0.7“2020-04-14

这是我的build.gradle文件:

代码语言:javascript
复制
plugins {
    id 'org.springframework.boot' version '2.3.1.RELEASE'
    id 'io.spring.dependency-management' version '1.0.9.RELEASE'
    id 'org.asciidoctor.convert' version '1.5.8'
    id 'java'
    id 'groovy'
    id 'java-library'
}

group = 'com.shohidulhaque'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenCentral()
}

ext {
    set('snippetsDir', file("build/generated-snippets"))
}


sourceSets {
    integrationTest {

        groovy.srcDir "$projectDir/src/integrationTest/groovy"
        resources.srcDir "$projectDir/src/integrationTest/resources"
        compileClasspath += main.output + test.output
        runtimeClasspath += main.output + test.output
    }
}

configurations {
    integrationTestImplementation.extendsFrom testImplementation
    integrationTestRuntime.extendsFrom testRuntimeOnly
}

task integrationTest(type: Test) {

    description = 'Runs integration tests.'
    group = 'verification'

    testClassesDirs = sourceSets.integrationTest.output.classesDirs
    classpath = sourceSets.integrationTest.runtimeClasspath
}

check.dependsOn integrationTest


dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-data-ldap'
    implementation 'org.springframework.boot:spring-boot-starter-hateoas'
    implementation 'org.springframework.boot:spring-boot-starter-oauth2-resource-server'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.data:spring-data-rest-hal-browser'
    compileOnly 'org.projectlombok:lombok'
    developmentOnly 'org.springframework.boot:spring-boot-devtools'
    annotationProcessor 'org.projectlombok:lombok'

    testImplementation('org.springframework.boot:spring-boot-starter-test')
    {
        exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
    }

    testImplementation 'com.unboundid:unboundid-ldapsdk'
    testImplementation 'org.springframework.restdocs:spring-restdocs-mockmvc'

    testImplementation group: 'org.codehaus.groovy', name: 'groovy', version: '3.0.4'
    testImplementation group: 'org.spockframework', name: 'spock-core', version: '2.0-M3-groovy-3.0'

    testImplementation (group: 'org.spockframework', name: 'spock-spring', version: '2.0-M3-groovy-3.0')
}

test {
    outputs.dir snippetsDir
    useJUnitPlatform()
}

asciidoctor {
    inputs.dir snippetsDir
    dependsOn test
} 
EN

回答 1

Stack Overflow用户

发布于 2020-07-13 03:46:31

我已经通过将integrationTest修改为:

代码语言:javascript
复制
task integrationTest(type: Test) {
    useJUnitPlatform()
    description = 'Runs integration tests.'
    group = 'verification'
    testClassesDirs = sourceSets.integrationTest.output.classesDirs
    classpath = sourceSets.integrationTest.runtimeClasspath
}

这将启用JUnit 5。我认为在默认情况下,它启用了JUnit4,这不能识别用于测试Spring Boot应用程序的一些注释。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62857729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档