一、缺陷模式
1.该模式下的缺陷是符合实际的。该模式定义的缺陷在实际工程中是大量存在的。
2.基于该模式的缺陷数目是可以容忍的。一般缺陷数目和系统规模成线性关系。
3.该模式下的缺陷是可以测试的。应该存在一个算法可以检测出来。
二、基于缺陷模式的软件测试技术特点
1.针对性强:如果说某种模式的缺陷是经常发生的,并且在被测软件中是存在的,则面向缺陷的测试可以检测出此类缺陷;
2.具有特殊性:往往能发现其他测试技术难以发现的故障;
3.工具自动化程度高以及测试效率高;
4.缺陷定位准确;
(5.易学易用易上手;)
三、故障模式
1.存储泄露(Memory Leak Fault)
内存没释放;申请函数或者空间和释放函数或空间不匹配;
2.数组越界(Out of Bounds Array Access Fault,OBAF)
正确翻译是“数组越界访问错误”;
对程序中任何出现Array[i]的地方,都要判断i的范围;字符串拷贝过程中存在的数组越界故障;
3.使用未初始化变量(Uninitialized Variable Fault)
以下几种情况不是UVF:
1)C++中,静态变量和全局变量隐含被赋予了初值0;
2)当一个为被初始化的变量作为函数的参数时,该变量可能在函数中被赋予了初值;
3)变量x在一个条件或一个循环中被赋值,在该条件或循环后将x赋给变量y,此时,由于难