본문 바로가기
java

[Spring boot] 스프링 부트 프로젝트에서 JUnit5 사용하기

by run() 2021. 1. 9.

<스프링 부트와 AWS로 혼자 구현하는 웹 서비스>를 보던 중, build.gradle 설정이 꼬여서 발생한 문제를 직접 해결하며 배운 내용입니다.

 

1. 상황

 

책에서 사용하는 Spring boot의 버전은 2.1.7 이다. 알고보니 이 버전에는 JUnit4가 디폴트로 사용되고 있었다. 저자의 블로그에서 2020년 12월 기준 최신 코드를 찾아볼 수 있다. 하지만 나는 Spring boot 는 책에서 사용하는 버전으로 쓰고 싶었고 JUnit만 4에서 5로 변경시키고 싶었다.

 

2. 해결책

 

  1) JUnit4 제외시키기

 

    testCompile('org.springframework.boot:spring-boot-starter-test') {
        exclude module: 'junit'
    }

 

build.gradle 에서 dependencies에서 spring-boot-starter-test의 행을 찾아준다. 그리고 exclude 행을 추가해주면, 디폴트로 사용하는 JUnit4를 제외시킬 수 있다.

 

 

  2) JUnit5 가져오기

 

    testImplementation('org.junit.jupiter:junit-jupiter-api:5.2.0')
    testCompile('org.junit.jupiter:junit-jupiter-params:5.2.0')
    testRuntime('org.junit.jupiter:junit-jupiter-engine:5.2.0')

 

dependencies에 위와 같이 JUnit5 의존성을 추가해주면 설정은 끝난다.

 

@Test 어노테이션을 입력했을 때, 패키지 경로가 위 그림처럼 org.junit.jupiter.api 로 나오면 JUnit5를 사용하는 것이다!

 

 

댓글