|
相信大家在做测试的时候,公司会通过缺陷管理工具来统计,分析,提交BUG报告,有些公司通过这些来考察员工的工作绩效,不知道大家公司在测试的时候究竟找出了多少缺陷呢?下面我们来看看,找缺陷大家是否彻底了呢:
首先,我们来看看软件缺陷的估算方法:
B=1/2(n/m+n/2m) 其中:n>m,m是复杂性系数,一般取值200LOC~400LOC,LOC单位代表:源代码行数; n是软件的复杂度,一般用源代码总行数来表示.
例如一个10万行级的代码程序,大概存在如下数目的缺陷:
B=1/2(100000/200~400+100000/400~800)
=187.5~375(个)
但是软件错误按开发阶段进行分类,又可以分为:计划错误,需求分析错误,设计错误,编码错误,测试错误,运行与维护错误等.
例如:有一个6877000行源代码程序被发现了含有16029个错误,分析后如下:
1.软件需求错误:1317个 8.2%
2.功能和性能错误: 2624个 16.1%
3.结构错误: 4082个 25.2%
4.数据错误(数据库设计): 3638个 22.4%
5.实现和编码错误: 1601个 9.9%
6.集成错误: 1455个 9.0%
7.系统结构: 282个 1.7%
8.测试定义与执行: 447个 2.8%
9.其他类型: 763个 4.7%
假如你公司只做黑盒测试,呵呵,恭喜你,你们只找到了4000多个Bug. 如果贵公司又做白盒测试,恭喜你,找到了70%多的Bug,最后,如果还做数据库测试的话,又可以多找到3000多个拉.
所以有时候说测试是不能100%的,很多时候我们只是做了其中一少部分的工作,还有很多隐藏的缺陷随时都有可能被触发...... |
|