[发明专利]一种单元测试中软件故障自动定位方法有效
申请号: | 201210127772.2 | 申请日: | 2012-04-27 |
公开(公告)号: | CN102708052B | 公开(公告)日: | 2017-10-20 |
发明(设计)人: | 王雅文;宫云战;韩春晓;黄俊飞;金大海;唐容;蔡敏 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京汇泽知识产权代理有限公司11228 | 代理人: | 刘淑敏 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 单元测试 软件 故障 自动 定位 方法 | ||
1.一种单元测试中软件故障自动定位方法,其特征在于,该方法包括:
A、采用一组满足覆盖需求的测试用例,执行被测程序,判断测试用例的执行结果是否和预期结果一致;
B、根据各测试用例对应的执行路径,分析路径上的边信息,确定由路径上的边组成的可疑空间;
C、统计可疑空间中各条边被通过和未通过的测试用例覆盖的次数,计算指定执行模式下,各条边的可疑度;
D、由上述步骤得到的边的可疑度计算其相邻语句节点的可疑度;
E、根据相邻语句节点的可疑度大小对故障节点进行排序,并依次映射到被测程序中生成故障定位报告,辅助用户检查故障;
所述步骤B包括:
B1、可疑空间由指定执行模式下某些测试用例对应的执行路径包含的边组成,是判断故障发生的最大范围,取可疑空间的边进行后续步骤的可疑度计算,不同的执行模式,可疑空间则不同。
2.根据权利要求1所述的单元测试中软件故障自动定位方法,其特征在于,所述步骤A包括:
A1、基于两种执行模式进行故障定位,分别是全用例执行模式和部分用例执行模式;
A2、采用全用例执行模式时,将一组测试用例全部执行,根据执行结果是否和预期一致,将用例划分为互不相容的两部分,即通过的测试用例和未通过的测试用例,并记录对应执行路径包含的边信息;
A3、采用部分用例执行模式时,随机选择测试用例集合中的某个用例开始执行,判断执行结果是否和预期结果一致,直到有测试用例的执行结果和预期不一致时停止测试,将此时执行过的测试用例分为两部分,即前m个通过的测试用例和第m+1个未通过的测试用例,获取对应的执行路径;
A4、执行结果包括如下内容:函数具有返回值,记录其返回结果;关键的中间变量和全局变量,记录其返回值;含有文件操作时,记录生成的文件目录和内容信息;含有数据库操作时,记录生成的数据库目录和内容信息。
3.根据权利要求2所述的单元测试中软件故障自动定位方法,其特征在于,所述步骤B1进一步包括:
B11、全用例执行模式下,所有未通过的测试用例对应的执行路径包含的边集合一定存在故障,将此作为最大的可疑空间,用来进行该执行模式在后面步骤的可疑度计算;
B12、部分用例执行模式下,第m+1个未通过的测试用例对应的执行路径一定存在故障,将此路径上的边集合作为该执行模式下的可疑空间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210127772.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:程序路径中确定函数调用的上下文环境影响的方法
- 下一篇:一种电箱挂锁防护装置