软件测试hw2 fault,error,failure
第一题
Fault
原程序的循环条件是:
for (int i=x.length-1;i>0;i--)
这导致在程序执行时,不会判断数组x第0位是否与y相等,也即循环次数少了一次。
Test Case A
test: x=null, y=7
expected:NullPointerException
result:NullPointerException
该test case不会执行fault。
Test Case B
test: x=[5,7,11], y=7
expected:1
result:1
该test case执行了fault,但没有产生error。
Test Case C
test: x=[5,7,11], y=2
expected:-1
result:-1
该test case产生了error,但没有导致failure。
第二题
Fault
原程序在寻找数组中最后一个0时,循环条件如下:
for(int i=0;i<x.length;i++)
这样会返回数组中的第一个0,而不是最后一个0。
Test Case A
test: x=null
expected:NullPointerException
result:NullPointerException
该test case不会执行fault。
Test Case B
test: x=[0]
expected:0
result:0
该test case执行了fault,但没有产生error。
Test Case C
test: x=[0,7,11]
expected:0
result:0
该test case产生了error,但没有导致failure。