상세 컨텐츠

본문 제목

[Cucumber] 최종 정리 (Mental Model)

IT/프로그래밍

by James Lee. 2015. 12. 6. 19:54

본문




Mental Model이란? ​

사건이나 개념을 묘사하는 모델

feature파일은 아래의 내용을 포함한다.

  • ​feature
  • scenario
  • given
  • when
  • then

이는 BDD의 개념이다.


Cucumber은 어떤 순서로 동작하는가.

① Cucumber는 처음에 CucumberOptions에 지정된 범위 내에서 feature파일을 탐색한다.

② gherkin 문법을 이용하여 시나리오를 Given, When, Then단위로 분석한다.

③ Step Resource을 상속한 클래스가 @Given, @When, @Then을 구현했는지 확인한다. 구현하지 않았다면 적절한 메소드 템플릿을 추천해준다. (이것은 매우 유용한 기능이지만, Cucumber의 메인 기능은 아니다)

​Cucumber는 @Given, @When, @Then의 Annotation을 지원하고, 이에 따라 테스트가 적절하게 수행되는지를 체크해준다. (이것이 메인 기능이다)

Cucumber가 없었다면? BDD를 할 수는 있었겠지만 하드코딩으로 해야했을 것이다.

Cucumber는 BDD를 쉽게 적용할 수 있도록 도와주는 플러그인 정도라고 해석하면 될 것 같다.

관련글 더보기

댓글 영역