程序一
1、the fault:for循环中i>0应改为i>=0
for (int i=x.length-1; i >= 0; i--)
2、 (Reachability可达性,是fault可被观测到的三个条件之一,指的是故障代码被执行到)
所有输入(包括输入为null)都会执行fault。
3、只要x数组中有等于y的数且不在第一个的位置,即该数的下标不为0,则执行fault但不导致error。
例如:输入:x=[0,1],y=1
期望输出:1
实际输出:1
4、只要x数组中没有等于y的数,则执行fault且导致error但不导致failure。
例如:输入:x=[0,1],y=2
期望输出:-1
实际输出:-1
程序二
1、the fault:for循环中从前向后查找应改为从后向前查找
for (int i=x.length-1; i >= 0; i--)
2、所有输入(包括输入为null)都会执行fault。
3、数组只有一个元素,则执行fault但不导致error。
例如:输入:x=[1]
期望输出:-1
实际输出:-1
4、数组中没有0或只有一个0,则执行fault且导致error但不导致failure。
例如:输入:x=[0,1,2]
期望输出:0
实际输出:0