[junit] No tests found for given includes ...

해질녘·2022년 7월 11일
0

[junit] No tests found for given includes ...

오류 내용

No tests found for given includes: [jpabook.jpashop.MemberRepositoryTest]
(filter.includeTestsMatching)

해결

빌드 도구에서 설정 변경

설정 - 빌드, 실행, 배포 - Gradle - 다음을 사용하여 테스트 실행

디폴트 값 Gradle 에서 IntelliJ IDEA로 변경.

음 근데 이렇게 했는데 안 된다.

JUNIT5에서 JUNIT4 호환시키기

강의에서 올려준 샘플 코드를 열어보니 이렇게 하면 된다.
build.gradle 파일

plugins {
    id 'org.springframework.boot' version '2.6.9'
    id 'io.spring.dependency-management' version '1.0.11.RELEASE'
    id 'java'
}

group = 'jpabook'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
    implementation 'org.springframework.boot:spring-boot-starter-validation'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.boot:spring-boot-devtools'
    implementation 'junit:junit:4.13'
    compileOnly 'org.projectlombok:lombok'
    runtimeOnly 'com.h2database:h2'
    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'

    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    //JUnit4 추가
    testImplementation("org.junit.vintage:junit-vintage-engine") {
        exclude group: "org.hamcrest", module: "hamcrest-core"
    }
}

test {
    useJUnitPlatform()
}

스프링 2.6.x 부터는 Junit5가 기본으로 설치되기 때문에 Junit4랑 호환시키려면 이렇게 수정해야하는 듯 하다.

참고

이 포스팅은 실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 - 인프런 | 강의 들으며 작성하였다.

0개의 댓글