[发明专利]一种基于测试生成的软件崩溃重现方法及系统有效
申请号: | 201910565598.1 | 申请日: | 2019-06-27 |
公开(公告)号: | CN110413509B | 公开(公告)日: | 2021-08-03 |
发明(设计)人: | 玄跻峰;李瑶瑶 | 申请(专利权)人: | 武汉大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 | 代理人: | 鲁力 |
地址: | 430072 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于测试生成的软件崩溃重现方法及系统。该方法以栈踪迹的最末方法调用为起点逐步合成测试用例,以达到能够触发崩溃的特定程序状态;该方法分析引发崩溃的路径条件,并根据最末方法为最终测试用例的生成进行扩展。本发明方法的利用,能够达到自动化崩溃重现的效果。 | ||
搜索关键词: | 一种 基于 测试 生成 软件 崩溃 重现 方法 系统 | ||
【主权项】:
1.一种基于测试生成的软件崩溃重现方法,其特征在于,所述方法包括:获取目标程序的异常代码信息,所述异常代码信息用于指示所述项目代码段的路径条件满足度,所述路径条件包括异常条件,控制条件,类型条件和隐含条件四种;获取目标程序的栈踪迹信息,所述栈踪迹信息用于指示崩溃发生时栈踪迹中的最末方法,所述最末方法是相关程序崩溃前的最后一个方法调用;进行路径条件分析,具体是根据所述异常代码信息和栈踪迹信息提取异常条件,控制条件,类型条件和隐含条件四种类型的路径条件,通过路径条件的满足度计算测试用例的适应度;所述适应度用于指导测试用例的搜索,具体是:收集路径条件和工具指导进一步的随机搜索;通过路径条件估计适应度,进而指导测试用例的搜索;测试用例的适应度计算是基于测试用例的执行日志,通过检查路径条件的满足度而计算的;适应度越低,意味着在测试执行过程中覆盖的路径条件越多,并且测试用例越接近目标栈踪迹;适应度为零的测试用例,即适应度的最小值;进行测试用例扩展,具体是根据栈踪迹信息中提取的最末方法初始化一个测试用例,并在最末方法之前添加语句,而不考虑最末方法以后的语句;即:将一个测试用例从最末方法调用处“生长”,直到程序达到崩溃的状态;进行测试用例清理,具体是用于删除额外的变量,并更新变量名,进而提升可读性;测试用例清理的目标是通过两个步骤获得用户友好的测试用例。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910565598.1/,转载请声明来源钻瓜专利网。