from Dictionary - BDD
BDD(Behavior-Driven Development)
시나리오를 기반으로 테스트하는 패턴을 의마한다.
- given : 시나리오 진행에 필요한 조건을 미리 설정해두는 단계
- when : 시나리오를 진행 시 필요한 변화를 명시(mocking/ stubbing)
- Then : 예상되는 결과
BDDMockito
when().thenReturn();
- 메소드를 실제 호출하지만 리턴 값을 정의할 수 있다.
- 메소드 작업이 오래 걸린다면 끝까지 기다려야 한다.
- 실제 메소드를 호출하기에 호출 대상이 문제가 있으면 안된다.
doReturn().when();
- 실제 메소드 호출하지 않으면서 리턴 값을 정의할 수 있다.
- 실제 메소드 호출하지 않기 때문에 호출 대상의 문제 여부는 확인할 수 없다.
- void 리턴 메소드 stubbing 가능