[论文解读]Evaluate the Effectiveness of Test Suite Prioritization Techniques Using APFD Metric

Evaluate the Effectiveness of Test Suite Prioritization Techniques Using APFD Metric

使用APFD度量评估测试集优先级技术的有效性

背景

随着软件的发展,测试用例的大小往往会增加,这使得执行整个测试用例的成本太高.为了降低回归测试的成本,要对测试用例进行优先级划分。

什么是APFD?

Average Percentage of Fault Detected,平均故障检测率

APFD测量测试用例中检测到的故障百分比的加权平均值。APFD值的范围从0到100,数字越高故障检测率就越快。即越大越好

APFD原理

定义:

T: 测试用例集

T1,T2: 是对T进行某种排序后得到的测试用例集

m: 测试用例中包含的与预期结果相反的(错误的)测试用例数量

n: 测试用例总数和

TFi: 测试用例集中,错误的测试用例所对应的下标

APFD公式为
 APFD  = 1 −  TF  1 + T F 2 + ⋯ + T F m n m + 1 2 n \text { APFD }=1-\frac{\text { TF } 1+\mathrm{TF} 2+\cdots+\mathrm{TFm}}{\mathrm{nm}}+\frac{1}{2 \mathrm{n}}  APFD =1nm TF 1+TF2++TFm+2n1

例子说明

假设一次实验中:

m (number of faults) = 19
n (number of test cases) = 97

T1: TC-001, TC-002, TC-003 …………TC-081, TC-082, TC-101, TC-102, TC-103 …… TC-115

T2:TC-001, TC-002, TC-113, TC114, TC-003----TC-023, TC-026, TC-025, TC-024, TC-102—TC-107, TC-028,TC-029, TC-027, TC-101, TC-108----TC-112, TC-030----TC-045, TC-055, TC-056, TC-058, TC-057, TC-046----TC-054, TC-059----TC-082, TC-115

(TC-xxx是某个具体的测试用例,Tx指的是对测试用例的某种排序,)

Test Cases which contain faults are as:
TC-026, TC-029, TC-030, TC- 055, TC-058, TC-101, TC-102, TC-103, TC-104, TC-105, TC-106, TC-107,TC-108, TC-109, TC-110, TC-111, TC-112, TC-113, TC-114

(这里是发现了错误的测试用例,共有19个即n=19

将T1带入公式,计算APFD得:
KaTeX parse error: \cr valid only within a tabular/array environment

A P F D = 1 – 0.924 + 0.005 A P F D = 1.005 – 0.92 APFD = 1 – 0.924 + 0.005\\ APFD = 1.005 – 0.92\\ APFD=10.924+0.005APFD=1.0050.92

(解释: 这里的分子代表着Tfx,就是测试用例中,错误的测试用例出现的位置,比如错误用例中,第一个是TC-026,它在T1中位置是第26个,因此分子的第一个数是26)

将T2带入公式,计算APFD得:
26 + 36 + 44 + 60 + 62 + 38 + 29 + 30 + 31 + 32 + 33 + 34 +  APFD  = 1 − 39 + 40 + 41 + 42 + 43 + 3 + 4 19 × 97 + 1 2 × 97 \begin{aligned} 26+36+44+60+62+38+\\29+ 30+31+32+33+34+\\ \text { APFD }=1-\frac{39+40+41+42+43+3+4}{19 \times 97} &+\frac{1}{2 \times 97} \\ \end{aligned} 26+36+44+60+62+38+29+30+31+32+33+34+ APFD =119×9739+40+41+42+43+3+4+2×971

 APFD  = 1 − 667 1843 + 1 194  APFD  = 1 − 0.361 + 0.005  APFD  = 1.005 − 0.361  APFD  = 0.64 \text { APFD }=1-\frac{667}{1843}+\frac{1}{194} \\ \text { APFD }=1-0.361+0.005 \\ \text { APFD }=1.005-0.361 \\ \text { APFD }=0.64  APFD =11843667+1941 APFD =10.361+0.005 APFD =1.0050.361 APFD =0.64

(解释: 同上,错误用例中,第一个是TC-026,它在T2中位置是第26个,因此分子的第一个数是26,第二个是TC-29,在T2中位置是36,因此第二个数的36)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值