[Cucumber] BDD, 테스트 시나리오 문법(gherkin)

2021. 5. 4. 10:59도구/Appium+Cucumber

BDD, 테스트 시나리오 문법(gherkin)

Feature

: 테스트에 대상의 기능/책임을 명시한다.

Scenario

: 테스트 목적에 대한 상황을 설명한다.

Given

: 시나리오 진행에 필요한 값을 설정한다.

When

: 시나리오를 진행하는데 필요한 조건을 명시한다.

  • 하나의 시나리오에 하나의 when조건을 가질것을 추천한다
  • 하나 추가하고 싶으면 시나리오를 여러개로 쪼개야하는 신호다.

Then

: 시나리오를 완료했을 때 보장해야 하는 결과를 명시한다.

요약

  • 테스트 대상은 A 상태에서 출발하며(Given) 어떤 상태 변화를 가했을 때(When) 기대하는 상태로 완료되어야 한다. (Then)

  • 또는 Side Effect가 전혀 없는 테스트 대상이라면 테스트 대상의 환경을 A 상태에 두고(Given) 어떤 행동을 요구했을 때(When) 기대하는 결과를 돌려받아야 한다. (Then)

https://support.smartbear.com/cucumberstudio/docs/tests/best-practices.html?sbsearch=given

https://www.popit.kr/bdd-behaviour-driven-development%EC%97%90-%EB%8C%80%ED%95%9C-%EA%B0%84%EB%9E%B5%ED%95%9C-%EC%A0%95%EB%A6%AC/