白盒测试中,有5中测试方式:
<span style="font-family:KaiTi_GB2312;font-size:18px;">public void foo(int a, int b, int x) {
if (a > 1 && b == 0) {
x = x / a;
}
if (a == 2 || x > 1) {
x = x + 1;
}
}</span>
图来源网络:
如何给这个程序做测试呢??
语句覆盖:
每个语句走到了就行,不需要考虑各种分支的组合等:
测试用例:
a=2,b=0,x=4
分析:
该测试用例可满足每条语句(每行代码)都被执行一次,符合语句覆盖。
总结:
进行完语句覆盖后,每个判定只走了一条路径,即漏洞还很大。