IntelliJ Spring Gradle“运行所有测试”不起作用(单个测试运行正常)

时间:2019-07-14 06:33:58

标签: java spring testing gradle intellij-idea

我有一个包含4个测试和以下build.gradle的Spring Gradle项目:

plugins {
    id 'org.springframework.boot' version '2.1.6.RELEASE'
    id 'java'
}

apply plugin: 'io.spring.dependency-management'

version = '0.0.1'
sourceCompatibility = '11'

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter'
    //Rest Controller
    compile 'org.springframework.boot:spring-boot-starter-web'
    //Lombok
    compileOnly 'org.projectlombok:lombok'
    annotationProcessor 'org.projectlombok:lombok'
    //Tests
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    testCompile 'com.h2database:h2'
    //Database
    compile("mysql:mysql-connector-java")
    compile("org.springframework.boot:spring-boot-starter-data-jpa")
    //Authentication
    compile 'org.springframework.security:spring-security-crypto' //e.g. PasswordEncoder
    compile 'org.springframework.boot:spring-boot-starter-security' //e.g. @PreAuthorize
    //ResourceAssembler
    compile 'org.springframework.boot:spring-boot-starter-hateoas'
    //JWT Token generation
    compile("com.auth0:java-jwt:3.4.0")
}

我可以使用“运行测试”开始每个测试,并且效果很好,但是当我尝试“运行所有测试”时,它失败,并显示消息“运行“全部”时出错:没有junit.jar”

我已经尝试添加以下任何依赖项,但都不能解决该问题:

testCompile 'junit:junit:4.12


testImplementation('org.junit.jupiter:junit-jupiter-api:5.4.2')
testRuntime('org.junit.jupiter:junit-jupiter-engine:5.4.2')

我正在使用IntelliJ

1 个答案:

答案 0 :(得分:3)

类路径是从包含测试的模块的依赖关系派生的。这些文件是从工作目录加载的,因此应在测试的“运行/调试”配置中指定该文件。以下链接说明了如何针对测试进行配置。 Running JUnit tests in IntelliJ

此外,我还要检查IntelliJ IDE中的测试运行器配置。打开“首选项”或“设置”对话框窗口。检查Gradle配置并查找Build,Execution,Deployment |生成工具|摇篮|亚军:

enter image description here

在这里,选择Gradle测试运行器。配置完成后,您可以在覆盖范围内运行代码,看看是否有帮助。