[发明专利]一种基于语句频度统计的程序错误定位方法有效
申请号: | 201410241885.4 | 申请日: | 2014-05-30 |
公开(公告)号: | CN103995780B | 公开(公告)日: | 2017-01-04 |
发明(设计)人: | 舒挺;叶甜甜;夏劲松 | 申请(专利权)人: | 浙江理工大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 杭州天勤知识产权代理有限公司33224 | 代理人: | 褚超孚 |
地址: | 310018 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 语句 频度 统计 程序 错误 定位 方法 | ||
1.一种基于语句频度统计的程序错误定位方法,包括如下步骤:
(1)统计软件程序中各条语句在每组测试用例下的语句频度,得到对应的语句频度矩阵;
(2)统计每组测试用例在软件程序运行下的执行结果:正确或错误;
(3)根据所述的语句频度矩阵,计算各条语句在每组测试用例下的带权频度,并利用函数f(x)将所述的带权频度映射到0~1之间;
(4)利用映射于0~1之间的带权频度计算每条语句的错误可疑度,进而根据所述的错误可疑度从高到低对软件程序中的语句进行排序并逐条进行错误排查。
2.根据权利要求1所述的程序错误定位方法,其特征在于:所述的语句频度的定义为:以某一测试用例作为软件程序的输入,在软件程序对于该测试用例的整个运行过程中某一条语句的执行次数即为该语句在该测试用例下的语句频度。
3.根据权利要求1所述的程序错误定位方法,其特征在于:所述的语句频度矩阵的维度为m×n,m为软件程序中的语句总数,n为测试用例总数;该矩阵中第i行第j列的元素值为第i条语句在第j组测试用例下的语句频度,i和j均为自然数且1≤i≤m,1≤j≤n。
4.根据权利要求1所述的程序错误定位方法,其特征在于:所述的步骤(3)中根据以下算式计算各条语句在每组测试用例下的带权频度:
uij=ωijsij
其中:uij为软件程序中第i条语句在第j组测试用例下的带权频度,sij为语句频度矩阵中第i行第j列的元素值即软件程序中第i条语句在第j组测试用例下的语句频度,ωij为sij对应的权重系数。
5.根据权利要求1所述的程序错误定位方法,其特征在于:所述的函数f(x)满足以下两个条件:
a.f(x)在(0,+∞)单调递增,且f(0)=0;
b.x∈(0,+∞),f(x)∈(0,1)。
6.根据权利要求1或5所述的程序错误定位方法,其特征在于:所述的函数f(x)采用双曲正切函数,其表达式如下:
其中:x为函数f(x)的变量且为带权频度。
7.根据权利要求1所述的程序错误定位方法,其特征在于:所述的步骤(4)中根据以下算式计算每条语句的错误可疑度:
其中:suspi为软件程序中第i条语句的错误可疑度,vik为软件程序中第i条语句在第k组错误测试用例下的映射于0~1之间的带权频度,vip为软件程序中第i条语句在第p组正确测试用例下的映射于0~1之间的带权频度,所述的错误测试用例和正确测试用例即对应执行结果为错误和正确的测试用例,Tf和Tp分别为所有测试用例中错误测试用例和正确测试用例的个数,k和p均为自然数且1≤k≤Tf,1≤p≤Tp。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江理工大学,未经浙江理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410241885.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:储罐防护系统
- 下一篇:配料和混合设备的驱动装置