다음과 같은 코드 덩어리가 있습니다.
function bool PassesBusinessRules()
{
bool meetsBusinessRules = false;
if (PassesBusinessRule1
&& PassesBusinessRule2
&& PassesBusinessRule3)
{
meetsBusinessRules= true;
}
return meetsBusinessRules;
}
이 특정 기능에 대해 4 가지 단위 테스트가 있어야한다고 생각합니다. if 문에서 각 조건을 테스트하고 false를 반환하는지 확인하려면 세 개입니다. 그리고 함수가 true를 반환하는지 확인하는 또 다른 테스트.
질문 : 실제로 10 개의 단위 테스트가 있어야합니까? 9 개의 가능한 실패 경로를 확인합니다. IE :
- 거짓 거짓 거짓
- 거짓 거짓 참
- 거짓 참 거짓
그리고 가능한 모든 조합에 대해서도 마찬가지입니다.
나는 그것이 과잉이라고 생각하지만, 우리 팀의 다른 멤버들 중 일부는 그렇지 않습니다. 내가 보는 방법은 BusinessRule1이 실패하면 항상 false를 반환해야합니다. 처음으로 확인했는지 또는 마지막으로 확인했는지는 중요하지 않습니다.