[java] TestNG를 사용한 병렬 테스트 실행
TestNG는 Java 기반의 테스트 프레임워크로, 테스트 수행을 보다 유연하게 관리하고 병렬 실행을 지원합니다. 이 글에서는 TestNG를 사용하여 병렬로 테스트를 실행하는 방법에 대해 알아보겠습니다.
1. TestNG 설치
먼저, TestNG를 설치해야 합니다. Maven을 사용하는 경우 pom.xml
파일에 다음 의존성을 추가합니다.
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>7.0.0</version>
<scope>test</scope>
</dependency>
그리고 Maven 프로젝트를 업데이트하여 의존성을 추가합니다.
2. 병렬 실행 설정
TestNG에서 병렬로 실행할 테스트를 지정하려면 testng.xml
파일을 사용합니다. 다음은 testng.xml
파일의 예시입니다.
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="MyTestSuite" parallel="methods" thread-count="4" >
<test name="MyTestClass1">
<classes>
<class name="com.example.MyTestClass1" />
</classes>
</test>
<test name="MyTestClass2">
<classes>
<class name="com.example.MyTestClass2" />
</classes>
</test>
</suite>
위 예시에서 parallel
속성은 병렬 실행 방식을 지정하며, thread-count
속성은 사용할 스레드 수를 나타냅니다.
3. 병렬 테스트 실행
이제 TestNG를 사용하여 병렬로 테스트를 실행할 준비가 되었습니다. 다음은 Java 코드에서 TestNG를 사용하여 병렬 테스트를 실행하는 예시입니다.
import org.testng.TestListenerAdapter;
import org.testng.TestNG;
public class TestRunner {
public static void main(String[] args) {
TestListenerAdapter testListener = new TestListenerAdapter();
TestNG testNG = new TestNG();
testNG.setTestClasses(new Class[]{com.example.MyTestClass1.class, com.example.MyTestClass2.class});
testNG.addListener(testListener);
testNG.run();
}
}
위 예시에서 MyTestClass1
과 MyTestClass2
는 병렬로 실행됩니다. setTestClasses
메소드를 사용하여 실행할 테스트 클래스를 지정하고, addListener
메소드를 사용하여 이벤트 리스너를 등록합니다.
4. 실행 결과 확인
테스트가 성공적으로 실행되면 각 테스트의 실행 결과가 출력됩니다. 이 결과를 통해 테스트가 제대로 실행되었는지 확인할 수 있습니다.
참고 자료
이제 TestNG를 사용하여 병렬로 테스트를 실행하는 방법을 알게 되었습니다. 테스트를 효율적으로 관리하고 시간을 절약하기 위해 TestNG를 활용해 보세요!