[发明专利]一种基于分支覆盖与相似性的回归测试用例优先排序方法在审
申请号: | 201510884000.7 | 申请日: | 2015-12-04 |
公开(公告)号: | CN105528289A | 公开(公告)日: | 2016-04-27 |
发明(设计)人: | 王荣存;姜淑娟;张磊;张艳梅;薛猛;王兴亚 | 申请(专利权)人: | 中国矿业大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06N3/00 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 221116*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 分支 覆盖 相似性 回归 测试 优先 排序 方法 | ||
1.一种基于分支覆盖与相似性的回归测试用例优先排序方法,其特征在于,在待测程 序上运行所有的测试用例,获得每一个测试用例的执行剖面;执行剖面为测试用例在执行 过程中所覆盖的分支向量,如果分支被覆盖则在向量中的值为1,反之则为0;通过欧式距离 函数计算成对的分支覆盖向量的距离,将该距离作为与剖面对应的测试用例之间的距离; 根据测试用例多样性理论,定义目标函数模型并采用蚁群算法对回归测试用例进行优先排 序;该方法包括下列步骤:
1)测试用例剖面信息的收集与分支覆盖向量的构建;
采用自动化方式批量执行所有的测试用例,并联合动态插桩技术获得运行测试用例产 生的剖面信息文件;分析获得的剖面信息文件,并提取文件中的分支执行频率列为每一个 测试用例构造分支覆盖向量;如果一个分支执行频率大于0,则在分支覆盖向量中该分支对 应的值是1,否则是0;
2)成对的测试用例之间距离的计算;
使用步骤1)产生的分支覆盖向量计算成对的剖面之间的距离,并将其作为与剖面信息 对应的测试用例之间的距离;基于成对的测试用例之间的距离信息构造相异度矩阵;其中, 测试用例之间的距离计算方法如下:根据步骤1)产生的分支覆盖向量计算两个测试用例之 间的距离,计算公式如下:
式中,表示测试用例X与Y之间的距离,和分别表示测试用例X和Y对应的分 支覆盖向量中的第位的取值;
3)回归测试用例的优先排序;
构造测试用例不相似性有限完全图,以测试用例作为顶点,测试用例之间的连线作为 边,邻接的测试用例之间的距离作为边的权重(使用步骤2)产生的相异度矩阵);然后以目 标函数为指导,通过蚁群算法求解具有最长路径的Hamilton路;由于测试用例的多样性有 助于提高回归测试的错误发现效率,因此通过寻找具有最长距离路径的测试用例序列以最 大程度上保证测试用例的多样性;最后将产生的Hamilton路中的测试用例序列作为回归测 试用例优先排序的最终序列;目标函数如下:
式中,表示待排序的测试用例集合,和表示测试用例。
2.根据权利要求1所述的基于分支覆盖与相似性的回归测试用例优先排序方法,其特 征在于,在步骤1)中,测试用例运行时的剖面信息通过动态插桩技术收集;编写自动化批处 理脚本文件,将插桩命令封装在脚本中;运行批处理脚本,收集测试套件中所有测试用例的 剖面信息;每一个测试用例对应一个剖面信息文件,该文件包括待测程序中的每一个分支 的编号,以及每一个分支被执行的频率;解析剖面信息文件,并构建分支覆盖向量,最后将 每一个测试用例对应的分支覆盖向量保存在分支覆盖向量文件中。
3.根据权利要求1所述的基于分支覆盖与相似性的回归测试用例优先排序方法,其特 征在于,在步骤2)中,按行读取步骤1)产生的分支覆盖向量文件;由于一行对应一个测试用 例,因此将每一行封装成一个Map对象;Map对象中的键值对分别是测试用例编号,及该测试 用例对应的分析覆盖向量;通过欧式距离函数计算成对的Map对象中的键对应的值之间的 距离;遍历所有的Map对象,以构建测试用例之间的相异度矩阵。
4.根据权利要求1所述的基于分支覆盖与相似性的回归测试用例优先排序方法,其特 征在于,在步骤3)中,以测试用例为顶点,测试用例之间的连线作为边,测试用例之间的距 离作为边的权重构建测试用例之间的不相似有限完全图;基于测试用例之间的距离构建目 标函数;以目标函数为指导,采用蚁群算法在不相似有限完全图中寻找具有最长距离的路 径;对应该路径的测试用例序列即为优先排序后的测试用例序列。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国矿业大学,未经中国矿业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510884000.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种DDR内存控制器及其访问监控方法
- 下一篇:一种PCIE验证方法