缺陷消除率(DRE)

使用测试期间发现的缺陷度量和用户发现的缺陷度量,可以构造一个更高层次的测试有效性的度量。测试结束时可能很想知道,在软件中所存在的总体缺陷中,测试期间发现的缺陷数到底占多大比重?这个度量称为缺陷消除率(DRE),其定义为:
DRE=测试期间发现的BUG数量/(测试期间发现的BUG数量+未发现的BUG数量)
    上述公式中,未发现的BUG数量通常等于客户发现的BUG数量(尽管客户也不可能发现所有的BUG)。所以,分母就是可能发现的BUG数量。
    要成功地运用这种度量,还必须清楚许多问题:
    。必须考虑BUG的严重程度和分布状况。(有些组织将所有的缺陷同等对待,也即根据各个严重程度等级的比率差不多是恒定的这一原理,不引入严重程度)
    。如何才能知道客户什么时候会发现所有的BUG?通常需要观察客户在以前的项目或版本中报告的缺陷的走势,以确定客户发现“绝大多数的”BUG所需要的时 间。如果他们在一年之后还会偶尔发现一个BUG,这个BUG可能并不会对度量造成重大的影响。在某些应用系统中,特别是拥有较多用户的应用系统中,在几天 之内就能报告绝大多数的BUG。而另外一些拥有较少用户的系统则可能需要花费几个月的时间才能初步确定已经报告了绝大多数的BUG。
软件测试中的缺陷清除(Defect Removal Efficiency, DRE)是一个衡量测试过程有效性的重要指标,它反映了在某个特定阶段发现并修复的缺陷数量占整个项目生命周期中发现缺陷总数的比例。计公式如下: $$ \text{DRE} = \frac{\text{在测试阶段发现并修复的缺陷数}}{\text{测试阶段发现的缺陷数 + 用户反馈后发现的缺陷数}} \times 100\% $$ 缺陷清除越高,表示测试活动越有效,用户在使用过程中遇到的问题越少。通常情况下,高质量的测试流程可以实现80%以上的DRE值。 以下是一道关于缺陷清除的习题及解答: ### 习题: 某软件项目在开发和测试阶段共发现了200个缺陷,并且全部被修复。项目发布后,用户又报告了50个缺陷。请计该项目的缺陷清除。 ### 答案: 根据公式计: $$ \text{DRE} = \frac{200}{200 + 50} \times 100\% = \frac{200}{250} \times 100\% = 80\% $$ 因此,该项目的缺陷清除为80%[^1]。 ### 编程示例: 以下是用Python计缺陷清除的代码片段: ```python def calculate_dre(testing_phase_defects, post_release_defects): total_defects = testing_phase_defects + post_release_defects dre = (testing_phase_defects / total_defects) * 100 return round(dre, 2) # 示例数据 testing_phase_defects = 200 post_release_defects = 50 dre_value = calculate_dre(testing_phase_defects, post_release_defects) print(f"缺陷清除(DRE)为: {dre_value}%") ``` 执行以上代码输出结果为: ``` 缺陷清除(DRE)为: 80.0% ``` 通过该计方式,可以直观地评估测试工作的效果,并为改进测试策略提供依据。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值