天天看点

个人对软件测试最基础的理解(fault、error、和failure)

fault:可能是代码中某一个有逻辑问题的语句或代码块

只要不执行到fault,永远不会知道这块的逻辑是否有问题

而当执行到fault时,如果引起了error,那就是运行时错误,根据error的发现,我们能够追溯到fault的位置.

假如fault并没有引起error,程序可以顺利执行完成,但是程序完成的结果无法得到正确的答案,这就称为failure

当发生error或failure时,我们对于发现的fault的修改可以是有多种选择的,一般我们把最小修改量的位置称为fault所在的位置.

对于fault到底发生在何处,不可能有明确的时候,所以主要还是根据输入查看输出的方式,才能验证自己的程序.

对于文中名词的含义,有参照一篇博文:计算机术语——fault、failure、exception和error的区别

可以参照下,概念会有些不同,但是软件测试的目的还是很好理解的.