Fault,Error与Failure的联系与区别

 

 

Fault

可能导致程序失败的因素,可理解成具体的代码。

Error

在程序运行过程中与设计时的预先设想不一致的情况,如变量值错误,错误的运行路径等。

Failure

当一程序不能完成所要求的功能时,即失败。 

 

函数findLast

  1. Identify the fault.

在边界判断时出错 在i=0 时退出循环,没有检验第一个int值。

for循环中的条件判断应为:(int i=x.length-1; i > =0; i--)

2. If possible, identify a test case that does not execute the fault. (Reachability)

test: x=[]

直接抛出空指针异常而不执行以后的代码,所以没有执行fault

  1. If possible, identify a test case that executes the fault, but does not result in an error state.

test: x=[1, 2, 3]; y = 2

Expected= 1

执行了含有fault的代码在产生error返回了正确结果

4. If possible identify a test case that results in an error, but not a failure.

test: x=[2, 4, 5]; y = 1

Expected = -1

没有遍历到x[0],直接返回了-1,因此执行了error但是没有产生 failure

 

函数lastZero

1、 Identify the fault.

应该从后往前遍历,for循环中的条件判断应为:(int i=x.length-1; i > =0; i--);

2、 If possible, identify a test case that does not execute the fault. (Reachability)

test: x=[]

3、 If possible, identify a test case that executes the fault, but does not result in an error state.

test: x=[3, 2, 1];

Expected = -1

遍历了没有发现0 没有进入到error的情况。

4、 If possible identify a test case that results in an error, but not a failure.

test: x=[1, 2, 0]

Expected = 2

发生了error没有发生failure

返回了第一个0的位置 但只有一个0,结果正确,代码逻辑错误。 

 

转载于:https://www.cnblogs.com/scsji/p/8576854.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值