[java] Java Cucumber 리포트 생성
Cucumber는 테스트 자동화 도구로서 행동 주도 개발(Behavior Driven Development) 패턴을 지원합니다. Cucumber는 행위, 기능, 시나리오를 기반으로 테스트를 작성하고 실행할 수 있으며, 테스트 결과를 리포트로 생성할 수도 있습니다.
이번 글에서는 Java에서 Cucumber 리포트를 생성하는 방법에 대해 알아보겠습니다.
Step 1: Cucumber-JVM 의존성 추가
먼저, 프로젝트의 pom.xml
파일에 다음 의존성을 추가해야 합니다.
<dependencies>
<!-- Cucumber -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>버전</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>버전</version>
<scope>test</scope>
</dependency>
<!-- 리포트 생성 -->
<dependency>
<groupId>net.masterthought</groupId>
<artifactId>cucumber-reporting</artifactId>
<version>버전</version>
<scope>test</scope>
</dependency>
</dependencies>
Cucumber-JVM 및 리포트 생성에 필요한 의존성을 추가해줍니다. 버전은 프로젝트에 맞게 설정해야 합니다.
Step 2: 리포트 생성 설정
Cucumber 리포트를 생성하기 위해 RunCucumberTest
클래스를 작성합니다.
import org.junit.runner.RunWith;
import io.cucumber.junit.Cucumber;
import io.cucumber.junit.CucumberOptions;
@RunWith(Cucumber.class)
@CucumberOptions(
features = "src/test/resources/features",
glue = "stepdefinitions",
plugin = {"json:target/cucumber-report.json", "pretty", "html:target/cucumber-report"}
)
public class RunCucumberTest {
}
위의 코드에서 features
는 .feature
파일이 위치한 디렉토리를 지정하고, glue
는 스텝 정의 클래스(step definitions)의 패키지를 지정합니다. plugin
은 리포트 생성을 위한 플러그인 설정입니다. 여기서는 JSON 및 HTML 리포트를 생성하기 위해 json
및 html
플러그인을 사용하였습니다. 리포트는 target
디렉토리에 생성됩니다.
Step 3: 테스트 실행 및 리포트 확인
이제 테스트를 실행하고 리포트를 확인해보겠습니다.
RunCucumberTest
클래스를 실행합니다.- 실행이 완료되면
target
디렉토리에 리포트 파일들이 생성됩니다. target/cucumber-report/index.html
파일을 웹 브라우저로 열어 리포트를 확인합니다.
Cucumber 리포트를 통해 각 테스트 시나리오의 성공/실패 여부 및 상세 정보를 시각적으로 확인할 수 있습니다.
참고 자료
다음은 더 자세한 정보를 알고 싶을 때 참고할 수 있는 자료입니다.