bug分类:
Fault:静态存在于软件当中的缺陷
由于在coding过程当中写错了
Error:在运行过程中,运行到fault,触发了一个错误的中间状态
Failure(失效):error一直传播到软件的外面,使得测试人员或用户能观测到这个失效的行为
PIE模型:
观测到一个failure需要三个必要条件:
· 执行:必须执行这个错误的代码
· 感染:执行错误代码时必须触发一个错误的中间状态
· 传播:这个错误的中间状态必须能够传播到最后、输出,使得我们能够观测到它跟预期的输出不一致,即失效
注意:
测试未必能执行到fault的位置
测试执行到fault也不一定能触发错误的中间状态
一个测试执行到了fault、触发了error,也可能没有failure