[发明专利]一种软件测试用例生成技术的构建方法有效
申请号: | 201710749046.7 | 申请日: | 2017-08-28 |
公开(公告)号: | CN107391385B | 公开(公告)日: | 2018-06-01 |
发明(设计)人: | 杨顺昆;苟晓冬;苏梦璇;曾福萍;李大庆;林欧雅;陶飞;佘志坤 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京慧泉知识产权代理有限公司 11232 | 代理人: | 王顺荣;唐爱华 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件测试 构建 用例生成 进化 测试用例集 老化因子 随机生成 源代码 测试用例设计 测试用例生成 结果输出程序 缺陷检测能力 适应度函数 种群初始化 测试工具 初始种群 待测软件 结合应用 应用系统 种群 覆盖率 测试 输出 帮助 | ||
一种基于重生差分进化方法的软件测试用例生成技术的构建方法,步骤如下:1、收集待测软件源代码;2、给定适应度函数;3、定义老化因子,并给定老化因子界限值;4、构建重生差分进化方法及结果输出程序,搭建应用系统;5、结合应用系统与测试工具搭建测试用例生成平台;6、种群初始化,随机生成初始种群;7、获取随机生成的测试用例的覆盖率;8、完成种群的重生进化;9、输出符合要求的测试用例集;通过上述步骤,可以完成对基于重生差分进化方法的软件测试用例生成技术的构建。本发明适用于解决实际软件测试中的测试用例设计问题,可以帮助软件测试人员在降低成本和缩短时间的同时,设计出具有更高的缺陷检测能力的测试用例集。
技术领域
本发明提供一种软件测试用例生成技术的构建方法,它是一种基于重生进化方法的软件测试用例生成技术的构建方法,它涉及一种基于重生进化方法的软件测试用例生成技术的实现,属于软件可信性、软件测试领域。
背景技术
随着计算机技术的突飞猛进,软件规模日益扩大,软件功能也日趋复杂,软件故障就变得不可避免。如何提高软件产品的可靠性,保证软件产品的质量,已成为计算机技术发展的一个重大研究课题。作为软件工程的一个重要组成部分,软件测试是一个强有力的保证软件质量的方法,因而逐渐为人所重视。
从时间及成本角度考虑,穷举测试是不可能的,因而软件测试过程中的一个核心问题就是测试用例的设计。测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。好的测试用例集不仅能减少软件测试的工作量,降低测试成本,而且能在成本和时间的约束下,发现更多的软件错误。因此如何精选少量的测试用例,提高软件测试的缺陷检测能力,降低测试成本是软件测试优化研究中最关注的核心问题。
在软件测试优化的研究中,尽管动态规划方法对于一些规模较小的问题能得到精确解,但随着问题规模的增加,动态规划方法却无能为力,学者便逐渐将启发式方法应用到测试用例生成技术中。被广泛应用的启发式方法有遗传方法、蚁群方法、粒子群方法与人工蜂群方法。遗传方法通过交叉选择变异不断迭代得到优化后的测试用例。蚁群方法通过信息素更新实现用例寻优。粒子群方法通过空间矢量导向实现用例寻优。人工蜂群通过不同蜂种的工作分配实现用例寻优。这些智能方法可以提升测试用例覆盖率,并且自动生成测试用例。但这些方法都存在着早熟,容易陷入局部最优解,而导致测试用例的检测效率不高的缺点。
差分进化方法是一种新型的启发式优化计算方法,其原理主要包括变异、杂交和选择,即从一个随机产生的初始种群开始,通过把种群中任意两个个体的向量差与第三个个体求和来产生新个体,然后将新个体与当代种群中相应的个体相比较,如果新个体的适应度优于当前个体的适应度,则在下一代中就用新个体取代旧个体,否则仍保存旧个体。通过不断地进化,保留优良个体,淘汰劣质个体,向最优解逼近。这个进化过程在测试用例的设计中就是用例的优化过程,而优劣的衡量指标就是测试用例的覆盖率。目前已有许多的专家学者将差分进化算法运用到了测试用例的生成之中,并且对方法的进化模式和控制参数进行了优化。但是这些优化并未彻底改善差分进化方法如同其他的启发式方法一样,容易陷入局部最优解的缺点。针对这一状况,我们将提出一种基于重生差分进化方法的软件测试用例生成技术的构建方法,在这项技术中,我们在差分进化方法的基础上加入了重生策略。我们定义一个老化因子,当种群老化到一定程度,其老化因子大于给定的界限值时,重生条件被触发,种群将被彻底摧毁,重新生成新的种群。而后继续进化,以实现覆盖率的提升,以此来防止生成测试用例的过程中过早的陷入局部最优解。使用这一技术可以避免差分进化方法过早陷入局部最优,而导致测试用例的覆盖率不达标的缺点,生成精简高效的测试用例集。
该测试用例生成技术在差分进化方法的基础之上结合重生策略,形成基于重生差分进化方法的软件测试用例生成技术,在提高测试用例缺陷检测能力、降低测试用例数量的同时,达到提高软件可信性、可用性的目的。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710749046.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种SQL语句检测方法及系统
- 下一篇:测试工具的时间资源管理系统和方法