위키득계정 ↗
기술

Godog

Godog기술
분야
행동 주도 개발 검사
언어
Go
시나리오 형식
Gherkin
실행 연결
Go 테스트와 단계 정의
Godog은 Gherkin 시나리오를 Go 코드와 연결해 실행하는 Cucumber 프레임워크다. 상황과 동작, 기대 결과를 단계로 표현하고 기본 Go 테스트 흐름에도 결합할 수 있다.

문장을 실행으로 바꾸기

Gherkin으로 요구사항을 적으면 Godog은 각 단계에 연결된 Go 함수를 찾아 실행한다. 문장의 의미를 자동으로 추론해 검사를 완성하는 것은 아니다. 단계 함수가 실제 시스템을 조작하고 기대 결과를 확인해야 한다. 읽기 쉬운 시나리오와 충실한 검증이 함께 있어야 실행 가능한 명세가 된다.

시나리오 상태 관리

같은 시나리오의 단계는 준비한 상태를 전달하며 동작을 이어갈 수 있다. 문맥과 훅을 이용해 데이터 준비나 정리를 구성한다. 서로 다른 시나리오가 전역 상태를 공유하면 실행 순서나 동시성에 따라 결과가 달라질 수 있다. 각 시나리오의 상태를 분리하고 외부 자원의 공유 범위도 확인한다.

실행 결과와 호환성

Go 테스트의 하위 검사나 전체 실행 진입점에 시나리오 모음을 연결할 수 있다. 명령을 실행했다는 사실과 시나리오가 실제로 선택되어 수행되었다는 사실은 구분한다. 보류된 단계나 빠진 정의를 통과한 검사로 오해하지 않는다. 저장소는 1 버전 이전의 API 변경 가능성을 안내하므로 사용하는 버전과 실행 구성을 함께 관리한다.

관련 문서

Cucumber JVM / Cucumber JS / Ginkgo / Reqnroll