[发明专利]测试用例优先级排序中的tie-breaking的解决方法及系统有效
申请号: | 201811501029.2 | 申请日: | 2018-12-10 |
公开(公告)号: | CN109710514B | 公开(公告)日: | 2022-02-15 |
发明(设计)人: | 黄如兵;张犬俊;陈锦富 | 申请(专利权)人: | 江苏大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 212013 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 测试 优先级 排序 中的 tie breaking 解决方法 系统 | ||
本发明公开了测试用例优先级排序中的tie‑breaking的解决方法及系统,步骤1,根据测试用例集在基础版本的程序集上运行情况,收集测试用例集代码覆盖信息;步骤2,将测试用例集在迭代错误版本上运行,获得测试用例集在各个版本上的错误检测情况;步骤3,使用基于Additional的tie‑breaking改进方法,根据获得的代码覆盖信息进行测试用例排序,输出已排序的测试用例序列;步骤4,根据已排序的测试用例序列和测试用例集的错误检测情况,计算该测试用例序列的评估值并进行统计分析。本发明在贪心算法基础上,在多个测试用例拥有相同覆盖评价的节点使用历史覆盖信息进行二次排序,解决tie‑breaking问题,减少了测试用例排序过程中的随机性;相对于传统贪心算法,提高了排序过程的确定性。
技术领域
本发明属于软件测试领域,涉及测试用例优先级排序中的tie-breaking的一种解决方法。
背景技术
从软件开发生命周期我们可以发现,软件工程不仅仅是软件开发以及编程语言,软件测试占据了很大的一个部分,尤其是在软件迭代回归测试中,事实上,回归测试作为一种有效的方法,可以保证代码局部的修改而对被测程序带来某些位置的错误,而数据表明,回归测试一般占据了软件测试预算的80%左右,并占据了整个软件维护预算的一半。因此为了缩减回归测试的开销,工业界与学术界提出了一系列基于测试用维护的技术,具体包括测试用例排序TCP(Test Case Prioritization),测试用例选择TCS(Test CaseSelection)以及测试用例缩减TCM(Test Case Minimization)等。
测试用例排序TCP毫无疑问是如今测试研究中的一个热点,其最早由Wong等人于1997年提出,基于传统的测试用例无顺序执行,提出了优化测试用例排序来提高回归测试效率的想法,使得越有可能发现程序错误的用例能够越早执行,以便越早发现错误进行修复,其准则是依据某种原则按优先级高高低对所有程序进行排序,进行测试。
基于代码覆盖测试用例排序提出于21世纪初左右,其中Rothermel和Elbaum教授等人在1999年到2002年四年之间发表了4篇奠基性的文章,形成了基于代码覆盖测试的主要框架。
同时他们给出了测试用例排序TCP问题的一般性描述:
·给定:测试用例集T,T的全排列集PT,排序目标函数f,其定义域为PT,值域为实数。
·问题:T′∈PT,使得
这里PT代表着T所有可能的排列顺序,而f函数是输入一个给定的排序顺序,输出一个与排序结果成正比的数值,以此代表该排序的表现结果。
首先Rothermel等人基于语句覆盖粒度、分支覆盖粒度提出了total和additional两种贪婪算法思想,并与unorder、random以及optimal进行比较,通过实践验证了total和additional相对于随机测试的优越性。基于1999年论文,Elbaum等人进行了一些改进,首先相对于语句和分支覆盖粒度,增加了function覆盖粗粒度,证实了进行粗粒度的排序方法可以减少程序开销,但也会降低排序效果。Rothermel等人还考虑到使用软件度量技术来进一步提高TCP技术的有效性,他们将测试用例的FEP(fault exposing potential)值首次应用到相关的贪心算法中,FEP值可以用于估计测试用例的缺陷检测能力,其计算PIE模型和变异测试分析。PIE模型认为可检测程序内在缺陷的测试用例,需满足3个条件:(1)测试用例执行了包含缺陷的语句;(2)造成程序内部状态出错;(3)通过传播错误的内部状态影响到程序的输出。变异测试是评估测试用例集充分性的一种有效手段,对被测程序执行符合语法约束的简单代码修改(即变异算子)可生成大量变异体,当测试用例在变异体和原有程序上的执行行为不一致时,则称该测试用例可以检测到该变异体。以语句覆盖为例,给定被测程序P和测试用例t,首先计算语句s(s∈P)的ms值,计算公式为
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏大学,未经江苏大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811501029.2/2.html,转载请声明来源钻瓜专利网。