본문 바로가기

스프링

스프링 테스트 - TDD, JUnit

참고 출처 : https://www.youtube.com/watch?v=SFVWo0Z5Ppo

 

TDD 

- Test Driven Development

- 테스트 주도 개발, 즉, 테스트를 먼저 만들고, 개발을 진행하는 것.

- 애자일 개발 방식 중 하나

TDD를 적용하는 이유

- 코드의 안정성을 높임

- 기능을 추가, 변경에 대한 부작용을 방지

- 테스트 코드의 대상 코드 목적을 명확하게 표현 가능 ➡️ 불필요한 코드를 줄임

 

 JUnit

- Java의 대표적인 테스트 프레임워크

- Unit Test를 위한 도구를 제공

- 어노테이션 기반

- 스프링 부트 2.2 부터 JUnit 5 사용

- JUnit 5 = Jupiter + Platform + Vintage

JUnit Jupiter

- Test Engine API 구현체로 JUnit 5의 구현체

- Jupiter API를 통해 테스트 코드를 발견, 실행

- 실제 테스트 코드를 작성할 때 사용되는 모듈

JUnit Platform

- Test를 실행하기 위한 뼈대

- Test Engine 인터페이스를 가지고 있음

- Test Engine을 통해 Test를 발견하고, 수행 및 결과를 보고

- 각종 IDE 연동을 보조

- Platform = Test Engine API + Console Launcher + JUnit 4 Runner)

JUnit Vintage

- TestEngine API 구현체로 JUnit 3, 4를 구현함

- 기존 JUnit 3, 4로 작성된 테스트 코드를 실행하기 위한 모듈