[发明专利]一种基于轨迹监控的Java软件故障定位方法在审
申请号: | 202110587631.8 | 申请日: | 2021-05-27 |
公开(公告)号: | CN113282495A | 公开(公告)日: | 2021-08-20 |
发明(设计)人: | 李必信;李渊;王璐璐;孔祥龙;廖力;周颖 | 申请(专利权)人: | 东南大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 南京众联专利代理有限公司 32206 | 代理人: | 杜静静 |
地址: | 210096 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 轨迹 监控 java 软件 故障 定位 方法 | ||
本发明公开了一种基于轨迹监控的Java软件故障定位方法,针对Java应用程序构建了二次故障定位算法,首先通过动态插桩技术获取程序的执行轨迹信息,对获取的执行轨迹信息进行预处理,构造出对应的函数调用树,在函数级别对故障进行定位。然后对于可疑度高的函数,进行语句块级别的执行轨迹获取,构建出语句块的控制依赖图,在语句块级别进行故障定位,输出故障定位报告。与现有的故障定位方法相比,本发明方法操作简单,故障定位效果好。
技术领域
本发明涉及计算机软件自动化调试技术领域,尤其涉及一种基于轨迹监控的Java软件故障定位方法。
背景技术
软件开发过程中进行充分全面的软件测试对于提高软件可靠性,减少软件故障的发生有帮助。在进行软件测试过程中,故障定位是最耗时耗力的阶段。需要故障定位人员进行手工定位,这要求进行故障定位的人员对软件很熟悉,了解软件的执行流程与交互过程,即使这样故障定位的过程也往往耗时耗力。相关调查研究发现,软件开发厂商往往会将软件开发、维护成本的40%~60%投入到软件测试与故障定位和修复中。越到软件开发的后期,进行相关故障的定位和修复所花成本也越大,为了降低开发、维护成本,这就需要提高故障定位的效率,对于自动化故障定位方法的需求也越来越迫切。
目前在软件故障定位领域中,根据故障的数量可分为单故障定位与多故障定位。单故障定位方法假设程序中只有一个故障,找到该故障后即可完成故障定位。这类方法考虑的情形简单,方法实现较多故障定位方法简单。在单故障的情形下,定位效果好,定位时间代价低。单故障定位方法主要可分为以下几类:基于程序切片的故障定位方法、基于程序频谱的故障定位方法、基于模型的故障定位方法。多故障定位比单故障定位更复杂,主要体现在故障数目未知,故障之间的相互叠加影响,往往需要进行多次执行,导致故障定位效率下降。目前故障定位算法研究主要集中在单故障定位领域。
自动化故障定位方法主要具有以下优点:1、简化故障定位的中间过程,降低操作人员的使用要求。2、能够提高故障定位的效率,降低软件开发维护成本。自动化故障定位方法能够根据执行过程的不同,给出故障语句的可疑度排序报告,相关开发人员只需按可疑度由高到低顺序来进行相关代码检查即可,不再需要从头到尾进行检查,提高了故障定位的效率。因此研究一种基于轨迹监控的Java软件故障定位方法,对于提高Java应用程序的故障定位效率,有着重要的意义。
发明内容
本发明的目的是提供一种基于轨迹监控的Java软件故障定位方法,通过动态插桩技术获取Java程序运行时的执行轨迹信息,对轨迹信息进行处理,采用二次故障定位的方式,分别计算出函数级别的可疑度值与语句块级别的可疑度值,并按可疑度值由大到小进行排序,给出相应级别的故障定位报告。
为了实现上述目的,本发明的技术方案如下:一种基于轨迹监控的Java软件故障定位方法,包括如下步骤:
步骤1)运行待测的Java应用程序,利用动态插桩工具向其中织入获取函数级别轨迹信息记录的代码。输入测试用例集合T={t1,t2,...,tn}并执行,获得待测程序运行时函数级别的执行轨迹信息记录集合S={s1,s2,.....,sn}和测试用例的执行结果集合R={r1,r2,...,rn}。;
步骤2)对步骤1)中所获得的S与R,进行预处理,构造出测试用例执行成功的函数调用树Ts与测试用例执行失败的函数调用树Tf,对其进行可疑度计算,函数按照可疑度从大到小进行排序,输出函数级别的故障定位报告;
步骤3)基于步骤2)中获得的函数级别的故障定位报告,选择可疑度高的函数,作为参数输入到动态插桩工具中,动态插桩工具向待测程序中织入获取语句块级别轨迹信息记录的代码;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东南大学,未经东南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110587631.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:分布式告警系统、方法和装置
- 下一篇:一种自行式道路标线机