brunch

You can make anything
by writing

C.S.Lewis

by 이지원 Apr 28. 2023

다시 시작하는 Cucumber

테스트 자동화 에세이

Cucumber를 처음 접한 건 작년, 당시 Java 언어로 Cucumber 프레임워크를 사용하면서 BDD 철학을 살펴보곤 했었다. TestNG, Mocha, Pytest에 비해서 배워야 하는 개념이 많았고 BDD 실무 경험이 없다면 당장 활용하기 어려웠다.

최근에 다시 Cucumber를 WebdriverIO와 함께 활용하게 되면서 Cucumber에서 제공하는 테스트 후크 설정과 시나리오 최적화에 대한 공식 문서를 살펴보다 보니 문득 작년 포스팅했던 블로깅이 떠올랐다.


https://brunch.co.kr/@jiwonleeqa/240

특히나 UI를 조작하는 E2E 테스트 레이어는 로직 최적화만으로는 Mocking을 활용하는 테스트 레이어보다 빠른 반복 실행과 테스트 결과의 일관성을 보장하기 어렵기에 서비스에 적절한 테스트 후크 셋업과 더불어 설계 관점에서 시나리오 최적화가 필요하다.

이론상 모든 시나리오는 독립된 환경에서 독립된 데이터로 테스트 의존성을 제거해야 하지만, 때로는 시나리오 간의 의존성을 남겨두는 것이 효율적일 수도 있기 때문에 자동화 엔지니어는 테스트 케이스가 자동화 목적에 적합한 형태로 지속 운영 가능한지에 대해 고민하고 현실 세계에서 발생하는 우리 조직만의 문제를 대응하고 방향을 결정해야 한다.

코딩 스킬만큼 중요한 BDD 컨셉 2가지 블로깅에서 언급하는 BDD 키워드처럼 때로는 코딩 스킬만큼 중요한 테스트 자동화 분야의 지식과 개념이 존재한다. 이번 주말엔 Cucumber 공식 문서를 다시 살펴보고 잘 만들어진 boilerplate 프로젝트를 살펴보면서, 왜 이렇게 구현했을까에 대해 살펴보는 시간을 가져야겠다.

매거진의 이전글 좋아하는 일이 직업이 된다면

작품 선택

키워드 선택 0 / 3 0

댓글여부

afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari