[发明专利]一种面向错误定位需求的测试用例约简方法无效
申请号: | 201310099877.6 | 申请日: | 2013-03-26 |
公开(公告)号: | CN103136103A | 公开(公告)日: | 2013-06-05 |
发明(设计)人: | 龚丹丹;苏小红;王甜甜;马培军;王煜;赵玲玲 | 申请(专利权)人: | 哈尔滨工业大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 哈尔滨市松花江专利商标事务所 23109 | 代理人: | 杨立超 |
地址: | 150001 黑龙*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 错误 定位 需求 测试 用例约简 方法 | ||
技术领域
本发明涉及一种面向错误定位需求的测试用例约简方法,属于软件动态测试领域。
背景技术
传统的软件错误定位方法大多采用设置断点等人工分析的方法,人工定位错误不仅难度大,而且极其耗时。软件错误自动定位的目的是通过计算机分析程序源代码或程序运行过程中产生的运行时状态,检测程序中的异常情况,辅助开发人员快速有效地定位软件错误。
现有的不多的面向错误定位的测试用例约简方法,都只研究了程序运行时的语句覆盖情况,忽略了程序运行时的路径信息以及错误测试用例对错误定位的影响。例如北京大学的郝丹等人研究了基于语句覆盖的测试用例约简方法,提出了不同的测试用例约简策略,为基于测试用例的故障定位提供高语句覆盖的测试集合。作者指出,测试用例的冗余或相似降低错误定位的精度。但它只考虑了语句覆盖,没有考虑路径覆盖。Yu等将相对冗余思想用于测试用例约简,提出基于向量的测试用例约简方法。通过实验证明,与基于语句覆盖的测试用例约简方法相比,基于向量的测试用例约简方法更有利于错误定位。目前的测试用例约简方法,都只研究了程序运行时的覆盖情况,忽略了程序运行时的路径信息以及错误测试用例对错误定位的影响。因此,这些方法只达到了约简测试用例的目的,而约简后的测试用例对错误定位精度的提高效果并不明显。
发明内容
本发明的目的是旨在解决为软件错误自动定位提供有效的测试用例,进而提高错误定位精度的问题,从而提供一种面向错误定位需求的测试用例约简方法。
一种面向错误定位需求的测试用例约简方法,它包括如下步骤:
步骤1:用于数据预处理的步骤;
步骤2:基于语句覆盖向量和错误定位需求向量的用于测试用例约简的步骤;
步骤3:基于执行路径信息的用于测试用例约简的步骤;
步骤4:得到约简后的测试用例集。
所述步骤1:用于数据预处理的步骤为通过插装器将探针插入程序中,并通过动态执行测试用例捕获插装信息的步骤。
所述插装信息包括语句覆盖信息和执行路径信息。
所述步骤2:基于语句覆盖向量和错误定位需求向量的用于测试用例约简的步骤包括如下步骤:
步骤21:根据错误测试用例对应的语句覆盖向量,计算错误定位需求向量:如果程序的错误定位需求是只定位一个错误,则错误定位需求向量的计算方法为将所有错误测试用例对应的覆盖向量求交;如果程序的错误定位需求是定位多个错误,则错误定位需求向量的计算方法为将所有错误测试用例对应的覆盖向量求并;
步骤22:将覆盖向量中的被所有测试用例都执行的语句删除,得到每个测试用例的剩余语句覆盖向量和错误定位需求剩余向量;
步骤23:将每个正确测试用例的剩余语句覆盖向量与错误定位需求剩余向量求交,若结果为0,将该正确测试用例删除。
所述步骤3:基于执行路径信息的用于测试用例约简的步骤包括如下步骤:
步骤31:将测试用例根据执行路径信息进行分类,获得具有相同语句覆盖向量的测试用例;
步骤32:查找具有相同语句覆盖向量的测试用例对应的执行路径信息,将执行路径完全相同的测试用例删除;
步骤33:将剩余的路径进行循环标准化。
本发明的面向错误定位需求的测试用例约简方法,由于面向错误定位需求,删除了与错误测试用例无关和关系较小的正确测试用例,以及语句覆盖和执行路径完全相同的测试用例,因而能够为软件错误自动定位提供更有效的测试用例,有助于提高软件错误自动定位的精度。该方法能够将软件错误自动定位精度提高20%,并适用于大规模程序代码的错误定位技术领域。
本发明提出的面向错误定位需求的测试用例约简方法,可以为C,Java程序提供有效的测试用例,以提高错误定位的精度。
附图说明
图1是本发明一种面向错误定位需求的测试用例约简方法的流程示意图;
图2是基于语句覆盖向量和错误定位需求向量的测试用例约简模型示意图;
图3是基于语句覆盖向量和错误定位需求向量的测试用例约实例流程示意图;
图4是具体实施方式四所述获取剩余覆盖向量的示意图;
图5是基于语句覆盖向量和错误定位需求向量的测试用例约简实例示意图;
图6是基于执行路径信息的测试用例约简模型示意图;
图7是基于执行路径信息的测试用例约简实例示意图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学,未经哈尔滨工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310099877.6/2.html,转载请声明来源钻瓜专利网。