测试有效性指标DDP的评估和优化
发布网友
发布时间:2022-12-30 15:57
我来回答
共1个回答
热心网友
时间:2023-09-17 11:02
缺陷检测百分比DDP(Defect Detection Percentage)常常可以用来评判软件测试生命周期内某个阶段的测试有效性。但是,在实际评判测试有效性过程中,DDP也存在某些方面的欠缺。本文通过分析DDP的基本原理,笔者提出了更适合测试有效性评估的优化DDP(简称O-DDP)。
1)DDP
穷尽测试是不可能的,因此,不可避免有一些缺陷会遗漏到客户的使用现场,从而触发软件产品产生令用户不满意的失效或者各种问题。通常来说,在测试过程中判断测试人员的测试有效性是很困难的。但是通过用户反馈的缺陷数目,却可以直观的说明测试人员是否遗漏了比较多的问题,从而反映测试人员的测试有效性。缺陷检测百分比DDP(Defect Detection Percentage)就是基于这样的目的进行定义的,它可以用来评判软件测试生命周期内某个阶段的测试有效性,它以百分比的形式进行计算。其计算公式为:
DDP = [R1 / (R1 + R2)] * 100%
其中:
1)R1指的是被评估阶段发现所发现的缺陷数目;
2)R2是被评估阶段之后所发现的所有的缺陷数目;
DDP计算公式的分母并不是发现的总的缺陷数目,而是指该阶段之后所有发现的缺陷数目(包括该阶段的缺陷数目)。表1是计算DDP的一个例子(主要针对动态测试而言的):表1 DDP计算的例子
采用DDP作为测试有效性的评估指标,主要存在两个问题:第一个是DDP无法在测试过程中对测试有效性进行评估,必须要等待产品发布一段时间之后才能进行,例如:产品发布之后3个月;另一个问题是DDP计算过程中只考虑了用户反馈的缺陷的数目,而没有考虑每个缺陷的严重程度;单纯的缺陷的数目,并不能正确的反映遗漏到客户的缺陷对用户造成的影响程度。而测试的有效性,要求测试人员尽早发现尽量多的严重的问题,而不仅仅是尽量多的缺陷数目。
对于DDP的第一个问题,由于DDP本身的定义要求,无法提供好的建议来解决该指标对测试有效性评估的延后性。而对于第二个问题,本文将综合考虑用户反馈的缺陷数目和严重程度,对DDP计算实现优化,从而更好的评估测试有效性。
2)O-DDP
O-DDP的基本原理和DDP是一样的,只是在计算过程中,同时考虑了缺陷的数目和缺陷的严重程度。根据笔者所在组织和项目的特点,其定义的缺陷严重程度如下[2]:
1)严重程度1(致命的):产品在正常的运行环境下无法给用户提供服务,并且没有其他的工作方式可以补救;或者软件失效会造*身伤害或危及人身安全;
2)严重程度2(严重的):极大地影响系统提供给用户的服务,或者严重影响系统要求或者基本功能的实现;
3)严重程度3(一般的):系统功能需要增强或存在缺陷,但有相应的补救方法解决这个缺陷;
4)严重程度4(轻微的):细小的问题,不需要补救方法或对功能进行增强;或者操作不方便,容易使用户误操作;
不同的缺陷严重程度,其定义的权重分别为w1 = 10、w2 = 4、w3 = 2和w4 = 1,分别对应严重程度1(致命的)、严重程度2(严重的)、严重程度3(一般的)和严重程度4(轻微的)。
下面通过案例的阐述,说明DDP和O-DDP计算得到的不同结果,以及根据结果分析得到的不同结论。在该案例中,评估的目标是系统测试的有效性,因此采用的缺陷数目分别来自系统测试发现的缺陷和在产品发布3个月之内用户反馈的缺陷。表1是根据DDP得到的结果:表2 DDP
我们从表1中得到的DDP = 89.54%结果来看,系统测试的有效性应该是非常不错的,因为遗留到用户现场的缺陷数目相对比较少。但是,在我们进行具体详细的分析用户反馈的缺陷的时候,发现用户对该产品的质量严重不满意。他们所反馈的缺陷,很多都是严重影响他们正常使用的问题。因此,上表中的DDP结果并不是让人信服的。
而后我们引入O-DDP,重新进行测试有效性的评估,其计算公式和DDP的公式一样,只是其中每个参数的计算进行了优化:
O-DDP = [R1 / (R1 + R2)] * 100%
其中:
1)R1是系统测试阶段发现的缺陷和它们不同严重程度权重乘积之和,具体计算公式是R1 = m1*w1 + m2*w2 + m3*w3 + m4*w4,其中m#指的是系统测试阶段不同严重程度的缺陷的数目;
2)R2是产品发布之后在用户现场发现的缺陷和它们不同严重程度权重乘积之和,具体计算公式是R2 = n1*w1 + n2*w2 + n3*w3 + n4*w4,其中n#指的是系统测试阶段不同严重程度的缺陷的数目
得到的详细数据如表2所示:表3 O-DDP
3)O-DDP和DDP比较
DDP的计算仅仅考虑了遗留到用户现场的缺陷的数目,完全没有考虑不同缺陷对用户的不同影响程度。而O-DDP的计算兼顾了缺陷的数目和缺陷的严重程度,相对于DDP而言,在判断测试人员的测试有效性方面O-DDP更加全面。
根据表1得到的DDP = 89.54%,而表2计算得到O-DDP = 80.31%,其中的差距差不多是10%。这里面说明了什么?我们可以对此进行简单的分析:
1)第一个可能是测试人员在进行系统测试的时候,发现的严重程度为1和2的缺陷占的比重较低;
2)第二个可能是在用户现场发现的缺陷严重程度为1和2的缺陷占比比较高;
3)不管是哪种情况,都应该引起测试人员的注意:测试人员在系统测试过程中遗漏了某些重要的缺陷,特别是用户特别关注的受到影响的缺陷。
测试有效性指标DDP的评估和优化
采用DDP作为测试有效性的评估指标,主要存在两个问题:第一个是DDP无法在测试过程中对测试有效性进行评估,必须要等待产品发布一段时间之后才能进行,例如:产品发布之后3个月;另一个问题是DDP计算过程中只考虑了用户反馈的缺陷的数目,而没有考虑每个缺陷的严重程度;单纯的缺陷的数目,并不能正确的反映...
360度评估的考核方法,了解一下?
建议采用“绩效考核+360度评估+人才测评”的新模式。之所以说这三种方式相结合将成为盘点管理人员的很好解决方案,是因为通过分析可以发现,这三种考察方式分别从业绩、能力、潜力三个不同角度,以及外在表现和内在潜能两个不同的层面对管理人员...
缺陷探测率DDP方法缺陷
在评估测试有效性时,DDP(Defect Detection Rate)方法面临着两个关键挑战。首先,DDP的实用性受到限制,因为它无法实时监测测试过程中的效果,而是依赖于产品发布后的滞后评估,比如需要等待三个月。这种延迟使得测试人员无法及时获取反馈,影响了测试的及时性和有效性。其次,DDP的计算方法过于简单,它仅仅...
BONBID-HIE 新生儿脑损伤病灶分割挑战赛冠军方案分享
实验总结:UNet-3D与SwinUNETR进行实验后,SwinUNETR表现更优,结合随机森林方法得到最佳分割结果。CarveMix增强训练数据,DDPT预训练方法均有助于提高分割精度。通过比较,验证了新方法在解决HIE病灶分割挑战中的有效性。参考文献:[1] Hatamizadeh A, Nath V, Tang Y, et al. Swin unetr: Swin trans...
曼彻斯特大学戏剧和舞台研究专业申请须知
英语语言测试有效性,一些英语语言测试结果仅有效期为两年。您的英语语言测试报告必须在课程开始日期有效。四、其他相关信息 1.如何考虑您的申请 我们欢迎来自各种入学途径的申请,包括成人学生和海外申请者。满足入学要求的每个申请都在平等的基础上考虑,每个申请由两名工作人员在做出决定之前进行评估。录取过...