[java] TestNG를 활용한 생성적 테스트

이번 글에서는 Java의 TestNG 프레임워크를 사용하여 생성적 테스트를 수행하는 방법에 대해 알아보겠습니다.

TestNG란?

TestNG는 개발자들이 자동화된 테스트를 구축하고 실행하는 데 사용할 수 있는 Java 기반의 테스팅 프레임워크입니다. JUnit과 마찬가지로 테스트 케이스를 작성하고 실행할 수 있으며, 다양한 기능을 제공합니다.

Maven 프로젝트 설정

먼저, Maven 프로젝트에 TestNG를 추가해야 합니다. pom.xml 파일에 다음 의존성을 추가합니다.

<dependency>
    <groupId>org.testng</groupId>
    <artifactId>testng</artifactId>
    <version>7.4.0</version>
    <scope>test</scope>
</dependency>

의존성을 추가한 후 Maven 프로젝트를 업데이트하여 TestNG를 가져옵니다.

생성적 테스트 작성

TestNG를 사용하여 생성적 테스트를 작성하기 위해 다음 단계를 따릅니다.

  1. 테스트 클래스 작성: TestNG 테스트를 위한 클래스를 작성합니다. @Test 애너테이션을 사용하여 각 테스트 메서드를 표시합니다.
  2. 테스트 데이터 작성: 테스트할 데이터를 작성하거나 로드합니다.
  3. 테스트 메서드 작성: @Test 애너테이션으로 표시한 메서드 안에서 실제 테스트를 수행합니다.
  4. 테스트 실행: TestNG 실행 시스템을 사용하여 테스트를 실행합니다.

아래는 예제 코드입니다.

import org.testng.annotations.Test;

public class CalculatorTest {

    @Test
    public void testAddition() {
        int result = Calculator.add(2, 3);
        assert result == 5;
    }

    @Test
    public void testSubtraction() {
        int result = Calculator.subtract(5, 2);
        assert result == 3;
    }
}

위 코드는 Calculator 클래스의 addsubtract 메서드를 테스트하는 예제입니다. @Test 애너테이션을 사용하여 각각의 테스트 메서드를 표시하고, assert를 사용하여 예상 결과와 실제 결과를 비교합니다.

테스트 실행

TestNG를 사용하여 테스트를 실행하려면 다음 명령을 실행합니다.

mvn test

TestNG는 테스트를 직렬 또는 병렬로 실행할 수 있으며, 결과 보고서를 생성하여 테스트 결과를 확인할 수 있습니다.

결론

TestNG를 활용하여 생성적 테스트를 수행하는 방법을 알아보았습니다. TestNG의 강력한 기능을 활용하면 더 간편하고 효율적인 테스트를 작성할 수 있습니다. 추가적으로 TestNG의 다른 기능들을 살펴보고 활용해보시기 바랍니다.

References