728x90
테스트 코드란 무엇이고, 왜 필요한가?!
테스트 코드란?
- 프로그래밍 코드를 사용해 무엇인가를 검증한다.
- 자동으로(사람 손을 거치지 X) 테스트를 할 수 있다.
테스트 코드가 필요한 이유
- 개발 과정에서 문제를 미리 발견할 수 있다.
- 기능 추가와 리팩토링을 안심하고 할 수 있다.
- 빠른 시간 내 코드의 동작 방식과 결과를 확인할 수 있다.
- 좋은 테스트 코드를 작성하려 하다 보면, 자연스럽게 좋은 코드가 만들어진다.
- 잘 작성한 테스트는 문서 역할을 한다(코드리뷰를 돕는다)
예시
최초 개발자가 개발한 코드를 다른 개발자가 이어서 개발하게 된다면, 최초 개발자보다 이해도가 높지 않기 때문에 버그 확률이 높다 -> 테스트가 있다면, 버그 확률을 낮출 수 있다.
리펙토링을 진행하면서, 매번 수동으로 검증하면 시간이 오래걸린다 -> 테스트가 있다면 리펙토링을 안심하고 할 수 있다
코틀린 테스트 환경 구축
plugins {
id 'org.springframework.boot' version '2.6.8'
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
id 'java'
id 'org.jetbrains.kotlin.jvm' version '1.6.21'
}
group = 'com.group'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
runtimeOnly 'com.h2database:h2'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
tasks.named('test') {
useJUnitPlatform()
}
compileKotlin {
kotlinOptions {
jvmTarget = "11"
}
}
compileTestKotlin {
kotlinOptions {
jvmTarget = "11"
}
}
- plugin 추가 : id 'org.jetbrains.kotlin.jvm' version '1.6.21'
- dependency 추가 : implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
- compileKotlin, compileTestKotlin 추가
의존성 추가후 main 밑에 kotlin 디렉토리, test 밑에 kotlin 디렉토리를 만들자

728x90
'실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기' 카테고리의 다른 글
| Ch02. Java 서버를 Kotlin 서버로 리팩토링하자 - Domain 계층 리펙토링하기 (0) | 2022.11.01 |
|---|---|
| Ch01. 도서관리 애플리케이션 리팩토링 준비하기 - JUnit5으로 Spring Boot 테스트 하기 (0) | 2022.10.29 |
| Ch01. 도서관리 애플리케이션 리팩토링 준비하기 - JUnit5 사용하기 (0) | 2022.10.29 |
| Ch01. 도서관리 애플리케이션 리팩토링 준비하기 - 수동 테스트 코드 작성하기 (0) | 2022.10.29 |
| Ch01. 도서관리 애플리케이션 리팩토링 준비하기 - 도서 관리 애플리케이션 이해하기 (0) | 2022.10.25 |