JUnit5 적용 방법
JUnit5 빌드 환경 만들기, Spring Boot에서의 JUnit5 적용 환경
빌드 환경
Gradle 환경으로 아래와 같이 빌드 파일(build.gradle
)이 필요하다.
build.gradle
plugins {
id 'java'
}
group 'com.devkuma'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
}
test {
useJUnitPlatform()
}
- 의존성으로
org.junit.jupiter:junit-jupiter-api
가 필요하다.
IDE로 프로젝트르 생성하게 되면 아래와 같은 디렉터리 구조가 된다.
.
├── build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── src
├── main
│ ├── java
│ │ └── com
│ │ └── devkuma
│ │ └── Main.java
│ └── resources
└── test
├── java
└── resources
테스트 코드 작성
/src/test/java/com/devkuma/junit5/JUnit5Test.java
package com.devkuma.junit5;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
class JUnit5Test {
@Test
void success() {
Assertions.assertEquals(3, 3);
}
@Test
void fail() {
Assertions.assertEquals(3, 5);
}
static class StaticTest {
@Test
void success() {
Assertions.assertEquals(3, 3);
}
@Test
void fail() {
Assertions.assertEquals(3, 5);
}
}
class InnerTest {
@Test
void success() {
Assertions.assertEquals(3, 3);
}
@Test
void fail() {
Assertions.assertEquals(3, 5);
}
}
}
Spring Boot에서의 적용 방법
Spring Boot 2.2 이후로 JUnit5를 기본 제공하고 있다. JUnit5를 쓰면 따로 설정 없이 starter-test에 포함된다.
Spring boot 2.2.x 이상
testImplementation("org.springframework.boot:spring-boot-starter-test")
test {
useJUnitPlatform()
}
Spring boot 2.2.x 이전
testImplementation("org.springframework.boot:spring-boot-starter-test") {
exclude module : 'junit'
}
testImplementation("org.junit.jupiter:junit-jupiter-api")
testCompile("org.junit.jupiter:junit-jupiter-params")
testRuntime("org.junit.jupiter:junit-jupiter-engine")
test {
useJUnitPlatform()
}
최종 수정 : 2024-04-14