[发明专利]基于热力图的回归测试用例优先级确定方法有效
申请号: | 202111164728.4 | 申请日: | 2021-09-30 |
公开(公告)号: | CN113886252B | 公开(公告)日: | 2023-05-23 |
发明(设计)人: | 冯子亮;罗赋伟;冯晋涛;芦韡;安萍;窦芙蓉;何旭东;冉旭松;何思迪;张炬 | 申请(专利权)人: | 四川大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 610065 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 力图 回归 测试 优先级 确定 方法 | ||
本发明提供了基于热力图的回归测试用例优先级确定方法,在对测试用例执行时的函数运行次数和时间的统计的基础上,通过绘制函数运行热力图或运行时间热力图的可视化方式,给出了确定集成测试阶段回归测试时各测试用例优先级的确定方法和步骤,可以方便直观地得到各测试用例的优先级;有效提高集成测试阶段回归测试的测试效率。
技术领域
本发明属于软件工程中的软件测试领域,尤其涉及在软件测试中集成测试阶段基于热力图的回归测试用例优先级确定方法。
背景技术
在一些科学计算类软件中,通常包含较为复杂的逻辑和数学运算,其集成测试用例运行时需要耗费大量的物理计算资源和时间;在软件进行缺陷修复后,进行回归测试时也存在同样的问题。
最可靠的回归测试方法是对全部测试用例进行回归测试,但在时间紧和预算受限等条件下,重测全部测试用例显得不现实,因此,如何有选择性地进行回归测试,是该类软件回归测试工作的一项重要内容。
基于优先级的测试用例选择方法是回归测试用例选择中的常用方法,可以根据以往的测试结果、各模块覆盖率、历史故障率等因素进行优先级计算,这些方法在实际应用中的效果各有千秋。
热力图是一种以可视化方式反映一个区域的受关注程度、显著程度或者活跃程度的方法,将其用在回归测试优先级的确定过程中,可以对测试用例的优先级选择给出一个直观和可视化的判断。
为了更好地完成科学计算类软件集成测试中的回归测试工作,本发明提供了一种依据集成测试阶段对完整测试用例集的测试结果数据,通过绘制函数运行热力图的可视化方式,进而确定集成测试阶段回归测试时各测试用例的优先级的方法,可提高回归测试阶段的测试效率。
发明内容
一种基于函数运行热力图的回归测试用例优先级确定方法,包括以下步骤:
(1)在集成阶段,针对完整测试用例集中的每个测试用例,记录总的运行时间、每个被调函数的运行次数和时间,计算每个函数的真实运行时间;
(2)将每个测试用例调用的函数的运行次数作为热力值,得到完整测试用例集的函数运行热力图;汇总得到函数运行汇总热力图;
(3)根据函数运行汇总热力图中每个函数的热力值,对全部函数进行排序;由于这里的热力值代表了该函数在完整测试用例集中的运行次数,运行次数越多,表明该函数越受关注,说明该函数是热点函数,我们也应当优先选择与该函数相关的测试用例;
(4)取热力值最高的函数,进而得到调用该函数的测试用例子集;
(5)在该函数的测试用例子集中,选取运行时间最短的测试用例,作为优先级第一的测试用例;同时在函数运行热力图中,将该函数所在行的全部热力值清0;由于资源和时间有限,在确定热点函数后,我们应当优先选择运行时间最短的测试用例;
(6)重复步骤(5),选择第二个以及后续的测试用例,直到函数运行热力图中全部热力值清0;其中,在对函数的测试用例子集选择时,要剔除已经选出的测试用例;若出现无法选择的情况,则按简单原则如顺序选择;此时得到的测试用例排序,可以作为其后续回归测试用例优先级的顺序。
所述计算每个函数的真实运行时间,包括:
(1)在计算每个函数的真实运行时间的时候,调用其他函数的运行时间不包括在内;
(2)根据调用关系,将本函数的运行时间,扣除调用其他函数的运行时间后,得到该函数的真实运行时间;
(3)对于总的运行时间很短的函数,可能存在无法得到该函数准确运行时间的情况,此时可将其设置为固定的最小值;
(4)对于需要反复调用且每次执行时间又比较短的函数,可以通过该函数调用处插桩的方法,来统计调用该函数的运行总时间;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川大学,未经四川大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111164728.4/2.html,转载请声明来源钻瓜专利网。