Buna benzeyen bir kod parçası var:
function bool PassesBusinessRules()
{
bool meetsBusinessRules = false;
if (PassesBusinessRule1
&& PassesBusinessRule2
&& PassesBusinessRule3)
{
meetsBusinessRules= true;
}
return meetsBusinessRules;
}
Bu fonksiyon için dört birim testinin yapılması gerektiğine inanıyorum. If ifadesindeki koşulların her birini test etmek ve yanlış döndürdüğünden emin olmak için üçü. Ve işlevin doğru döndüğünden emin olan başka bir test.
Soru: Bunun yerine on birim test yapılmalı mı? Her olası arıza yolunu kontrol eden dokuz kişi. IE:
- Yanlış Yanlış Yanlış
- Yanlış Yanlış Doğru
- Yanlış Doğru Yanlış
Ve böylece her olası kombinasyon için.
Bence bu aşırı, ama ekibimdeki diğer üyelerin bazıları yok. Bakmamın yolu, BusinessRule1'in başarısız olması durumunda daima yanlışa dönmesidir, ilk önce mi yoksa son mu kontrol edildiğinin önemi yoktur.