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 > 기록' 카테고리의 다른 글
| 일로, 여행으로 가득 채운 2025 하반기 🛫👩💻 (5) | 2026.01.12 |
|---|---|
| [회고] 2025 상반기 회고 📈 모로 가도 서울만 가면 된다! (15) | 2025.07.01 |
| 인프라 관련 툴 이해하기 (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 |