본문 바로가기
DevOps

행동 주도 개발(BDD, Behavior-Driven Development) feat.TDD

by 박다소니 2024. 10. 6.

 

[행동 주도 개발]

외부에서 내부적으로 관찰되는 시스템의 동작에 초점을 맞춤

 

모든 구성 요소가 함께 작동하는지 확인하기 위한 통합 테스트에 적합

비즈니스 성과에 가장 직접적으로 기여하는 행동만 구현

 

누구나 이해할 수 있는 단일 표기법(Gherkin 언어를 사용)으로 행동 설명 -> 커뮤니케이션 향상

Gherkin 구문으로 사용자 행동 스토리의 기준을 정의 -> 스프린트의 "완료" 기준이 명확해짐 ( 코드만으론 할 수 없는 스토리 )

Gherkin 언어 예시

 

[BDD와 TDD]

- BDD

: 외부에서 시스템 동작을 설명. 시스템을 소비자로 생각.

 모든 구성 요소가 더 높은 수준에서 함께 작동하도록 하는 동안 각 구성 요소가 제대로 작동하는지 확인

 즉, 올바른 것을 구축하고 있는지 확인하는 것

 BDD ensures that you are building the “right thing”

- TDD

: 시스템의 기능을 내부에서 외부로 테스트

 각 기능이 원래 의도한 작업을 수행하는지 확인하는 것

 TDD ensures that you are building the “thing right”