BDD를 이해하려고합니다. 일부 기사를 읽었으며 BDD가 TDD의 "다음 단계"라는 것을 이해했습니다. 나는 두 가지가 매우 비슷하다는 것을 알았 기 때문에이 기사 에서 읽을 수 있듯이 BDD는 TDD의 개선으로 태어났습니다. 좋아, 나는 그 아이디어를 정말로 좋아한다.
내가 얻지 못하는 한 가지 실용적인 점이 있다고 생각합니다 .BA가 시스템이 가질 것으로 예상되는 모든 동작을 기록하는 .feature 파일이 있습니다. BA로서 그는 시스템이 어떻게 구축되는지 전혀 모릅니다. 그래서 우리는 다음과 같이 작성할 것입니다 :
+ 시나리오 1 : 계정이 신용 상태입니다 +
계정이 신용 상태 인 경우
그리고 카드는 유효합니다
디스펜서에는 현금이 들어 있습니다
고객이 현금을 요청할 때
그런 다음 계정에서 인출되고 현금이 인출되는지 확인하십시오.
그리고 카드가 반환되었는지 확인하십시오
좋아, 이것은 훌륭하지만, 협력 할 시스템의 많은 부분이있다 (계정 obj, 디스펜서 obj, 고객 obj 등). 나에게 이것은 통합 테스트처럼 보입니다.
단위 테스트를하고 싶습니다. 디스펜서에 돈이 있는지 확인하는 코드를 어떻게 테스트합니까? 아니면 현금이 분배됩니까? 아니면 필요할 때 계좌에서 인출됩니까? "BA Created"테스트와 단위 테스트를 어떻게 혼합 할 수 있습니까?