728x90
Introduction | Cucumber
Cucumber is a tool that supports Behaviour-Driven Development (BDD).
cucumber.io
BDD (행동 주도 개발, Behavior Driven Development) 를 지원하는 테스트 프레임워크이다.
Gherkin 문법을 사용해서 테스트 시나리오를 작성한다. 시나리오는 Given, When, Then으로 구성되어있다.
Feature: 로그인 기능
Scenario: 올바른 자격 증명으로 로그인 성공
Given 사용자가 로그인 페이지에 접속했을 때
When 올바른 아이디와 비밀번호를 입력하면
Then 메인 페이지로 이동한다
이러한 시나리오를 기반으로 Step Definition이라고 불리는 코드를 작성한다.
Step Definition은 아래와 같이 테스트 시나리오를 그대로 구현한 것처럼 작성한다.
@Given("사용자가 로그인 페이지에 접속했을 때")
fun goToLoginPage() {
loginPage.open()
}
@When("아이디와 비밀번호를 입력하면")
fun enterCredentials() {
loginPage.enterUsername("testuser")
loginPage.enterPassword("password123")
loginPage.submit()
}
@Then("메인 페이지로 이동한다")
fun verifyMainPage() {
assertTrue(mainPage.isDisplayed())
}
이 클래스는 CucumberTest에서 시나리오에 따라 검증하는 역할을 한다.
단위 테스트를 작성하기 간편한 Junit과 다르게 시나리오 기반 테스트를 작성하기 간편한 프레임워크로 볼 수 있다.
728x90
'Other > 기록' 카테고리의 다른 글
인프라 관련 툴 이해하기 (Kubernetes, Terraform, Terragrunt, Helm, Spinnaker) (2) | 2025.03.18 |
---|---|
[TIL] 2024/12/10 (7) | 2024.12.10 |
[TIL] 2024/12/03 (1) | 2024.12.04 |
[TIL]2024/12/02 (0) | 2024.12.03 |
[회고] 2024년 상반기 회고 🎉 꽃이 먼저 피고 열매는 나중에 맺는다 🌸 (6) | 2024.07.04 |