首页 > 解决方案 > Spring Boot 项目的 JUnit 和 Mockito 依赖项

问题描述

我正在尝试使用 JUnit 和 Mockito 在我的 Spring Boot 项目上运行单元测试,但是很难弄清楚如何在我的 build.gradle 文件中为我的 gradle 项目设置依赖项。这是 build.gradle 文件:

plugins {
    id 'org.springframework.boot' version '2.2.2.RELEASE'
    id 'io.spring.dependency-management' version '1.0.10.RELEASE'
    id 'org.flywaydb.flyway' version '7.1.1'
    id 'java'
    id 'war'
}

targetCompatibility = 1.11
sourceCompatibility = 1.11

repositories {
    mavenLocal()
    mavenCentral()
    jcenter()
    maven {
        url = uri('https://repo.maven.apache.org/maven2/')
    }
}

flyway {
    url = System.getenv('HW_DATABASE_URL')
    user = System.getenv('HW_DATABASE_USER')
    password = System.getenv('HW_DATABASE_PASSWORD')
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-mail'
    implementation 'org.springframework.boot:spring-boot-starter-security'
    implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
    implementation 'org.springframework.boot:spring-boot-starter-validation'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    compileOnly 'org.projectlombok:lombok'
    annotationProcessor 'org.projectlombok:lombok'
    providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
    implementation 'org.apache.tiles:tiles-core:3.0.8'
    implementation 'org.apache.tiles:tiles-jsp:3.0.8'
    implementation 'javax.servlet:jstl:1.2'
    implementation 'mysql:mysql-connector-java:8.0.18'
    implementation 'org.hibernate:hibernate-core:5.4.9.Final'
    implementation 'org.hibernate:hibernate-entitymanager:5.4.9.Final'
    implementation 'javax.xml.bind:jaxb-api:2.3.1'
    implementation 'org.springframework.security:spring-security-taglibs:5.2.1.RELEASE'
    implementation 'com.googlecode.owasp-java-html-sanitizer:owasp-java-html-sanitizer:20190610.1'
    implementation 'com.fasterxml.jackson.core:jackson-databind:2.11.3'
    providedCompile 'org.apache.tomcat.embed:tomcat-embed-jasper'
    compile 'org.apache.commons:commons-text:1.9'
    compile 'commons-validator:commons-validator:1.7'
    compile 'org.flywaydb:flyway-core:7.1.1'
    compile 'org.springdoc:springdoc-openapi-ui:1.2.32'
    testCompile 'junit:junit:4.13.1'
    testCompile 'org.mockito:mockito-core:3.6.48'
}

现在我收到错误“无法解析 org.mockito:mockito-core:3.6.48”,我什至不知道我是否从https://github.com下载了正确的 Mockito 文件夹/mockito/mockito/releases。所以到目前为止,我的 junit 或 mockito 导入都没有被识别。任何帮助将不胜感激,谢谢。

标签: javaspring-bootjunitmockitobuild.gradle

解决方案


问题是 Maven 存储库中不存在 Mockito 的版本。Mockito 的最后一个版本是 3.6.28。签入此页面Maven 存储库


推荐阅读