JUnit 5 태깅과 필터링
JUnit 5 태깅과 필터링
테스트가 늘어나면 "빠른 테스트만 돌리고 싶은데", "스모크 테스트만 골라서 실행하고 싶은데" 하는 순간이 와요. JUnit에서 이 문제를 푸는 도구가 바로 태그(tag)예요. 테스트 클래스나 메서드에 태그를 달아 두면, 나중에 이 태그를 기준으로 테스트 발견과 실행 범위를 좁힐 수 있죠.
본문
테스트 클래스와 메서드는 @Tag 애노테이션으로 태그를 달 수 있어요. 달아 둔 태그는 나중에 테스트 발견과 실행을 필터링하는 데 쓸 수 있죠. JUnit Platform에서 태그를 어떻게 지원하는지는 Tags 섹션을 참고하면 돼요.
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
@Tag("fast")
@Tag("model")
class TaggingDemo {
@Test
@Tag("taxes")
void testingTaxCalculation() {
}
}
커스텀 태그 애노테이션을 만드는 방법은 Meta-Annotations and Composed Annotations 문서에 있는 예시를 참고할 수 있어요.
더 알아보기
- JUnit 5 애노테이션 —
@Tag를 포함한 애노테이션 전체 목록 - JUnit 5 테스트 발견과 필터링 — JUnit Platform에서 태그를 어떻게 해석하고 적용하는지