计算机科学与探索 ›› 2011, Vol. 5 ›› Issue (7): 602-612.
陈 洁, 李 倩, 赵建华 , 李宣东
CHEN Jie, LI Qian, ZHAO Jianhua, LI Xuandong
摘要: 提出了一种基于偶然正确性概率的测试充分度准则。考虑偶然正确性问题对测试的充分度衡量带来的影响, 设计了一种算法来计算程序中的一个错误因为偶然正确性的发生而使输出结果正确的概率。根据动静态数据流信息分析, 追溯了动态语句实例之间的定义-使用依赖关系, 并据此建立了定义-使用依赖关系图。对不同语句结构和跳转条件定义各种影响因子, 量化这些影响因子对错误的掩盖程度。给出了一种算法来计算程序的一次执行过程的测试充分度。选取五个C语言程序作为实验对象, 计算基于偶然正确性的测试充分度准则与错误发现效率之间的关系, 并与语句覆盖度的错误发现率进行了比较。实验结果显示基于偶然正确性的测试充分度准则能较好地发现错误。