在获得测试用例优先级排序后,我们还需要进行度量。度量主要从性能、开销进行度量
APFD
指标:平均故障检测百分比。可以给出测试用例执行过程中检测到缺陷的平均累计比例。
取值为0-100%之间,越高则检测缺陷越快。
给定程序包含m个故障F=f1,f2,…,fm和n个测试用例,T‘为T的一个优先级排列。TFi为T‘中第一个检测到故障fi的测试用例下标,则其APFD值为: APFD=1−TF1+TF2+...+TFmn∗m+12n 例如对于以下的测试用例和缺陷:
若执行序列为A-B-C-D-E,则可以算出APFD为50%,若执行序列为E-D-C-B-A,则可以算出APFD值为64%。
尽管APFD被广泛应用,但其默认每个测试用例具有相同的时间开销,也没有考虑缺陷的危害程度。
APFDc
相比于APFD,它考虑了测试用例的执行时间和缺陷危害程度。
NAPFD
考虑了实际优先级排序场景中:
- 测试用例集无法检测到所有缺陷
- 无法执行所有测试用例