<aside> 📖
학습 목표
JUnit 5는 단일 모듈로 구성되어 있지 않고, 다음과 같은 3개의 주요 구성 요소로 나뉩니다.
JUnit 5
└── junit-platform
├── junit-platform-engine
├── junit-platform-launcher
├── junit-platform-console
└── ...
JUnit Jupiter
└── junit-jupiter-api
├── junit-jupiter-engine
└── junit-jupiter-params
JUnit Vintage
└── junit-vintage-engine
JUnit Platform은 테스트 프레임워크를 실행하기 위한 기반 런타임입니다. 즉, Jupiter든 Vintage든 모두 Platform 위에서 실행됩니다.
| 모듈 | 설명 |
|---|---|
junit-platform-engine |
Jupiter, Vintage와 같은 엔진 구현을 위한 SPI 제공 |
junit-platform-launcher |
IDE, Gradle, Maven과 같은 실행기와 연결 역할 |
junit-platform-console |
커맨드라인에서 JUnit 테스트 실행 가능하게 함 |
junit-platform-commons |
공통 유틸리티 및 에러 처리 지원 |
LauncherDiscoveryRequest request = LauncherDiscoveryRequestBuilder.request()
.selectors(DiscoverySelectors.selectPackage("com.example"))
.build();
Launcher launcher = LauncherFactory.create();
launcher.execute(request);
위 코드는 테스트를 수동으로 실행할 때 Platform이 어떻게 작동하는지를 보여줍니다.
junit-platform-launcher를 통해 테스트를 수행합니다.