잡담

Condition/Decision Coverage

tomato13 2008. 4. 23. 10:14

http://www.bullseye.com/help/faq.html

 

아래 내용은 정확하지 않을 수 있으나 적어본다.

 

한마디로 요약하면 전체 condition/decision의 모든 가능한 경우에 대해서 선택한 condition/decision의 ratio를 가리킨다. 예를 들면

 

if ( a && b )

 

에서 condition은 a, b 그리고 a && b 를 생각할 수 있을 것이다. 각각에 대한 decision case는 true와 false를 생각할 수 있기 때문에 모두 6가지 경우를 생각할 수 있다.

 

a==true                 (1)

a==false               (2)

b==true                 (3)

b==false                (4)

(a&&b)==true         (5)

(a&&b)==false        (6)

 

이때 만일 a를 false로 수행한 경우를 생각해 보겠다. 이 경우는 (2), 그리고 (6)에 해당하기 때문에 condition/decision coverage는 2/6=33로 계산된다. 만일 a를 true로 그리고 b를 false로 수행한다면 이것은 (1), (4) 그리고 (6) 이기 때문에 3/6=50%로 계산될 것이다.