BDD의 초점이 대화 라는 것을 깨닫는 것이 도움이 될 수 있습니다 . BDD는 실제로 훌륭한 부산물로서 약간의 회귀 테스트를 제공하는 분석 도구입니다.
대화의 모든 수준에서 시나리오를 사용했습니다. 다른 이해 관계자 식별 에서 릴리스가 잘 수신 될 수 있는지 확인하고 모듈 또는 클래스의 작동 방식을 연구합니다 .
이것을 쉽게하기 위해 제안 할 수있는 몇 가지 힌트와 팁이 있습니다.
이전에 해본 적이 없다면 변경 될 것입니다.
도메인이나 비즈니스에 새로운 것은 바뀔 수 있습니다. 시나리오를 통해 이야기하고 질문하고 비즈니스가 "오, 잘 모르겠습니다"라고 말하면 이 공간에 있다는 것을 알게 될 것 입니다. 이는 BDD를 중단하고 더 빠른 피드백을 얻기 위해 무언가를 스파이 킹하여 비즈니스가 원하는 것을 해결하도록 돕는 좋은 신호입니다. 일단 아이디어가 안정되면 시나리오를 소급하여 작성할 수 있습니다.
모든 프로젝트에는 새로운 측면이 있거나 그렇지 않을 것입니다.
이전에 해본 적이 있다면 지루합니다.
새롭고 차별화 된 측면 뿐만 아니라 , 프로젝트는 일반적으로 이미 수행 된 것과 유사한 일부 범용 측면을 가지고 있습니다. 예를 들어, 새 휴대 전화를 생산하는 경우에도 전화를 걸어야합니다. "전화 걸기"는 잘 알려진 시나리오로서이를 통해 대화 할 필요는 없습니다. 마찬가지로 "로그인"또는 "사용자 등록"과 같은 것은 지루합니다.
가능하면 라이브러리를 사용하면 시나리오를 작성할 필요가 없습니다. 또한 다른 비트를 먼저 수행하십시오. 이미 로그인 한 사용자가 있고 자신이 로그인 한 내용 을 해결하십시오 . 이러한 영역은 변경되지 않으므로 수동 테스트를 수행하지 않아도됩니다.
누군가 전에 해본 적이 있다면 시나리오를 통해 이야기하는 것이 도움이 될 수 있습니다.
우리는 도메인 특정 요구 사항이 있는 곳, 누군가 가 상대적으로 잘 이해 하고있는 부분과 실제 불확실성이 시스템의 실제 행동이 아닌 범위를 중심으로하는 부분 사이에 약간의 차이가 있습니다.
시나리오를 통해 이야기하면 개발자 팀이 행동을 발견하고 전문가의 지식을 활용하며 알려진 귀중한 행동을 포착 할 수 있습니다.
이것이 BDD가 가장 잘 작동하는 부분입니다. 내 팁은 기능 파일의 맨 위에 가장 흥미로운 시나리오 (또는 자동화하지 않은 경우 Wiki)를 작성하고 결과적으로 복제되거나 추론하기 쉬운 시나리오를 삭제하는 것입니다.
가능하면 시나리오를 응용 프로그램 작동 방식의 예로 사용하십시오 . 예를 들어, 유효성 검사 작동 방식을 보여 주려면 응용 프로그램이 사용자가 양식을 작성하는 데 어떻게 도움이되는지 몇 가지 예를 보여줍니다. 유지 보수가 훨씬 쉽고 실행이 더 빠른 단위 테스트를 통해 유효성 검사가 엄격한 지 확인하십시오.
추가 자료
이것에 관심이 있다면, 내가 쓸 수있는 것들이 있습니다.
큰 BDD
개발자를위한 Cynefin. 이 세 영역에 대해 자세히 설명합니다.
내 튜토리얼 슬라이드 는 모두 훌륭하고 주석이 달려 있으며 전체 스택도 포함합니다.