[发明专利]一种基于执行路径信息的测试用例约简方法在审
申请号: | 201510887312.3 | 申请日: | 2015-12-07 |
公开(公告)号: | CN106844189A | 公开(公告)日: | 2017-06-13 |
发明(设计)人: | 龚丹丹;熊超群;郭素敏;蒋坚鸿;周李蓓 | 申请(专利权)人: | 上海精密计量测试研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 上海航天局专利中心31107 | 代理人: | 金家山 |
地址: | 201109 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 执行 路径 信息 测试 用例约简 方法 | ||
技术领域
本发明涉及软件动态测试领域,特别涉及一种基于执行路径信息的测试用例约简方法。
背景技术
传统的软件错误定位方法大多采用设置断点等人工分析的方法,人工定位错误不仅难度大,而且极其耗时。软件错误自动定位的目的是通过计算机分析程序源代码或程序运行过程中产生的运行时状态,检测程序中的异常情况,辅助开发人员快速有效地定位软件错误。
现有的不多的面向错误定位的测试用例约简方法,都只研究了程序运行时的语句覆盖情况,忽略了程序运行时的路径信息以及错误测试用例对错误定位的影响。例如北京大学的郝丹等人研究了基于语句覆盖的测试用例约简方法,提出了不同的测试用例约简策略,为基于测试用例的故障定位提供高语句覆盖的测试集合。作者指出,测试用例的冗余或相似降低错误定位的精度。但它只考虑了语句覆盖,没有考虑路径覆盖。Yu等将相对冗余思想用于测试用例约简,提出基于向量的测试用例约简方法。通过实验证明,与基于语句覆盖的测试用例约简方法相比,基于向量的测试用例约简方法更有利于错误定位。目前的测试用例约简方法,都只研究了程序运行时的覆盖情况,忽略了程序运行时的路径信息以及错误测试用例对错误定位的影响。因此,这些方法只达到了约简测试用例的目的,而约简后的测试用例对错误定位精度的提高效果并不明显。
发明内容
本发明解决的问题是现有的测试用例约简方法的错误定位精度不高;为解决所述问题,本发明提供一种基于执行路径信息的测试用例约简方法。
本发明提供一种基于执行路径信息的测试用例约简方法,包括:
步骤一、捕获插装信息;
步骤二、基于语句覆盖向量和错误定位需求向量执行测试用例约简;
步骤三、基于执行路径信息执行测试用例约简;
步骤四、得到约简后的测试用例集。
进一步,所述步骤一包括通过插装器将探针插入带测试程序中。
进一步,所述插装信息包括语句覆盖信息和执行路径信息。
进一步,所述步骤二包括:
步骤21: 根据错误测试用例对应的语句覆盖向量,计算错误定位需求向量:如果程序的错误定位需求是只定位一个错误,则错误定位需求向量的计算方法为将所有错误测试用例对应的覆盖向量求交;如果程序的错误定位需求是定位多个错误,则错误定位需求向量的计算方法为将所有错误测试用例对应的覆盖向量求并;
步骤22:将覆盖向量中的被所有测试用例都执行的语句删除,得到每个测试用例的剩余语句覆盖向量和错误定位需求剩余向量;
步骤23:将每个正确测试用例的剩余语句覆盖向量与错误定位需求剩余向量求交,若结果为0,将该正确测试用例删除。
进一步,所述步骤三包括:
步骤31:将测试用例根据执行路径信息进行分类,获得具有相同语句覆盖向量的测试用例;
步骤32:查找具有相同语句覆盖向量的测试用例对应的执行路径信息,将执行路径完全相同的测试用例删除;
步骤33:将剩余的路径进行循环标准化。
本发明的优点包括:
本发明的面向错误定位需求的测试用例约简方法,由于面向错误定位需求,删除了与错误测试用例无关和关系较小的正确测试用例,以及语句覆盖和执行路径完全相同的测试用例,因而能够为软件错误自动定位提供更有效的测试用例,有助于提高软件错误自动定位的精度。该方法能够将软件错误自动定位精度提高20%,并适用于大规模程序代码的错误定位技术领域。
本发明提出的面向错误定位需求的测试用例约简方法,可以为C,Java程序提供有效的测试用例,以提高错误定位的精度。
附图说明
图1是本发明实施例提供的基于执行路径信息的测试用例约简方法的流程示意图;
图2是本发明实施例提供的基于执行路径信息的测试用例约简方法中基于语句覆盖向量和错误定位需求向量的测试用例约简模型示意图;
图3是本发明实施例提供的基于执行路径信息的测试用例约简方法中中基于语句覆盖向量和错误定位需求向量的测试用例约实例流程示意图;
图4是具体实施方式四所述获取剩余覆盖向量的示意图;
图5是本发明实施例提供的基于执行路径信息的测试用例约简方法中基于语句覆盖向量和错误定位需求向量的测试用例约简实例示意图;
图6是本发明实施例提供的基于执行路径信息的测试用例约简模型示意图;
图7是本发明实施例提供的执行路径信息的测试用例约简实例示意图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海精密计量测试研究所,未经上海精密计量测试研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510887312.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:玩具水枪(9000)
- 下一篇:玩具变形金刚(2)
- 信息记录介质、信息记录方法、信息记录设备、信息再现方法和信息再现设备
- 信息记录装置、信息记录方法、信息记录介质、信息复制装置和信息复制方法
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录设备、信息重放设备、信息记录方法、信息重放方法、以及信息记录介质
- 信息存储介质、信息记录方法、信息重放方法、信息记录设备、以及信息重放设备
- 信息存储介质、信息记录方法、信息回放方法、信息记录设备和信息回放设备
- 信息记录介质、信息记录方法、信息记录装置、信息再现方法和信息再现装置
- 信息终端,信息终端的信息呈现方法和信息呈现程序
- 信息创建、信息发送方法及信息创建、信息发送装置