JUnit 5 태깅과 필터링

JUnit 5 태깅과 필터링

테스트가 늘어나면 "빠른 테스트만 돌리고 싶은데", "스모크 테스트만 골라서 실행하고 싶은데" 하는 순간이 와요. JUnit에서 이 문제를 푸는 도구가 바로 태그(tag)예요. 테스트 클래스나 메서드에 태그를 달아 두면, 나중에 이 태그를 기준으로 테스트 발견과 실행 범위를 좁힐 수 있죠.

출처: JUnit 5 User Guide — Tagging and Filtering

본문

테스트 클래스와 메서드는 @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 문서에 있는 예시를 참고할 수 있어요.

더 알아보기