[java] TestNG를 사용한 테스트 카테고리화 및 필터링
TestNG는 Java 기반의 강력한 테스트 프레임워크로, 테스트를 작성, 실행, 관리하는 데 많은 기능을 제공합니다. 이번 포스트에서는 TestNG의 테스트 카테고리화 및 필터링 기능을 사용하는 방법에 대해 알아보겠습니다.
테스트 카테고리 지정하기
TestNG에서는 @Test
어노테이션에 groups
라는 속성을 사용하여 테스트에 카테고리를 지정할 수 있습니다. 예를 들어, 아래 코드에서는 sanity
카테고리에 속하는 테스트 메서드를 정의하고 있습니다.
@Test(groups = "sanity")
public void testMethod1() {
// 테스트 내용...
}
여러 개의 카테고리를 지정하려면 속성 값으로 쉼표로 구분된 문자열을 사용하면 됩니다.
@Test(groups = {"sanity", "regression"})
public void testMethod2() {
// 테스트 내용...
}
테스트 필터링
TestNG에서는 실행할 테스트를 카테고리별로 필터링하여 선택적으로 실행할 수 있습니다. 이를 통해 특정 카테고리에 속한 테스트만 실행하거나 제외할 수 있습니다.
특정 카테고리 실행
testng.xml
파일에서 <groups>
요소를 사용하여 실행할 테스트 카테고리를 지정할 수 있습니다. 아래 예제에서는 sanity
카테고리에 속한 테스트만 실행하는 설정을 보여줍니다.
<test>
<groups>
<run>
<include name="sanity" />
</run>
</groups>
...
</test>
특정 카테고리 제외
<exclude>
요소를 사용하여 특정 카테고리를 제외할 수도 있습니다. 아래 예제에서는 regression
카테고리를 제외한 모든 테스트를 실행하는 설정을 보여줍니다.
<test>
<groups>
<run>
<exclude name="regression" />
</run>
</groups>
...
</test>
결론
TestNG를 사용하면 테스트를 카테고리화하여 필터링하는 것이 매우 간단합니다. 이를 통해 테스트 스위트를 유연하게 관리하고 선택적으로 실행할 수 있으므로 테스트를 더 효과적으로 관리할 수 있습니다.
더 자세한 내용은 TestNG 공식 문서를 참조하시기 바랍니다.