TDD(테스트 주도 개발)
2024. 3. 18. 21:33ㆍJava
소프트웨어 개발 프로세스에서 테스트가 개발을 주도하는 방법론
1. 프로젝트 설정
- Gradle 설정
Gradle은 Java 프로젝트의 빌드 및 의존성 관리를 위한 강력한 도구
Build system을 Gradle로 설정하고 새로운 프로젝트를 생성한다.
위와 같은 프로젝트가 생성될 것이다.
dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
}
build.gradle을 보면 기본적으로 dependendies에 junit이 추가되어있는 것을 볼 수 있다.
2. 테스트 게이스 작성
TDD의 핵심은 개발 시작 전에 테스트 케이스를 먼저 작성하는 것이다.
test/java/com/example에 CalculatorTest 클래스를 생성하고 아래와 같은 코드를 작성한다
import org.junit.jupiter.api.*;
public class CalculatorTest {
Calculator cal = null;
@Test
void plus() {
System.out.println("plus 테스트 실행");
Calculator cal = new Calculator();
Assertions.assertEquals(5,cal.plus(2, 3));
}
@Test
void minus() {
System.out.println("minus 테스트 실행");
Calculator cal = new Calculator();
Assertions.assertEquals(5, cal.minus(10, 5));
}
}
3. 구현 코드 작성
main/java/com/example에 Calculator 클래스를 생성하고 아래와 같은 코드를 작성한다.
public class Calculator {
public int plus(int val1, int val2) {
int result = val1 + val2;
return result;
}
public int minus(int val1, int val2) {
int result = val1 - val2;
return result;
}
}
4. 컴파일
CalculatorTest 클래스를 컴파일 해본다.