[发明专利]一种软件错误自动重现和定位的方法及系统有效
| 申请号: | 201110129892.1 | 申请日: | 2011-05-19 |
| 公开(公告)号: | CN102184138A | 公开(公告)日: | 2011-09-14 |
| 发明(设计)人: | 罗敬清;康晓林 | 申请(专利权)人: | 广东威创视讯科技股份有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 广州粤高专利商标代理有限公司 44102 | 代理人: | 禹小明 |
| 地址: | 510663 广东省*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 软件 错误 自动 重现 定位 方法 系统 | ||
技术领域
本发明设计软件设计和测试的技术领域,特别是涉及一种软件错误自动重现和定位的方法及系统。
背景技术
在控制软件的使用或测试过程中,由于设计的缺陷或考虑不周等原因,经常会出席各种故障,而且有些故障非常难以重现或定位。因此,如何通过一种快速且简单的方法使故障重现和对其定位对于设计人员来说是非常重要的。
目前最为常用的方法是采用分析日志文件的方法,其原理是在控制软件程序中对应的每一个操作处和可能出现故障的地方加入日志输出信息,记录用户的每一步操作及相应的数据。当控制软件出现故障时,设计人员根据控制软件运行过程中所记录的日志文件对程序进行逐步分析,进而找出故障产生的原因并定位程序设计的缺陷。
该方法虽然简单易行,且能够定位故障产生的原因及程序设计的缺陷,但其有以下两个缺点:第一,控制软件运行过程中往往会产生大量的日志信息,这大大增加了分析并定位故障所产生的原因的难度,而且分析效率往往非常低下;第二,若设计人员根据日志信息无法定位故障产生的原因及程序设计的缺陷,往往需要根据日志所记录的操作过程手动模拟实际的操作过程,而且有时需要多次重复模拟,无法做到自动模拟。
发明内容
本发明的第一个发明目的在于提供一种软件错误自动重现和定位的方法,以克服现有技术中的上述缺点和不足。
本发明的第一发明目的通过以下技术方案予以实现:
一种软件错误自动重现和定位的方法,所述方法包括以下步骤:
记录用户的输入操作及被操作对象定义生成日志文档;
当软件出现错误时,对日志文档进行解析,并还原用户的输入操作及被操作对象;
根据还原的用户的输入操作及操作对象,模拟用户的输入操作,实现错误的重现。
错误分为两类:1、一般错误,此类错误是指输入正确参数或操作正常状态下,软件却提示错误而不能执行所需功能。2、严重或致命错误,此类错误是指因输入正确或错误参数、正常或异常操作而导致软件崩溃、挂起、无法响应等不能继续使用软件的错误。
一般错误的判断方法:在软件目录下编写错误条件文件,软件启动时自动加载该文件。
文件格式如下:
[Interrupt];发生以下错误之一,软件自动中断停止运行
Errcode=80001000,80001010
Errstring=”参数错误”
[Continue] ;发生以下错误之一,软件忽略错误断续运行
Errcode=80002000,80002010
Errstring=”重新输入”
严重或致命错误的判断方法:此错误将导致软件不能继续运行,操作系统可以检测到并自动弹出是否启动调试器软件,选择是可进入软件代码调试。
作为一种优选方案,所述记录用户的输入操作及被操作对象定义生成日志文档,具体包括:
1)记录用户的输入操作及被操作对象定义为相应的XML节点格式;
2)以XML的方式记录鼠标和键盘操作过程及被操作对象,生成日志文档。
利用操作系统的一些系统机制(如鼠标钩子、键盘钩子、窗口消息等),捕捉鼠标键盘事件并记录至xml文件中。
当软件出现错误时,对日志文档进行解析,并还原用户的输入操作及被操作对象,具体包括:
3)软件出现错误时,对所生成的日志文档进行解析,解析出用户的输入操作及被操作对象。
作为一种优选方案,模拟用户的输入操作,实现错误的重现,具体包括:
启动软件的调试模式,根据日志文档的分析结果用户的输入操作,直到软件出现错误,则记录出错时的用户的输入操作。
作为进一步的优选方案,所述用户的输入操作包括:鼠标操作与键盘操作。
作为更进一步的优选方案,所述鼠标操作包括鼠标的位置、鼠标所点击的键和点击的动作及被操作对象以及操作发生的时间,所述键盘操作包括按键值及其操作的对象以及操作发生的时间。
作为进一步的优选方案,步骤3)中所述解析方法为:首先解析出日志文档上每个节点对应的操作类型,然后根据操作类型再解析每个节点下的子节点或属性,将解析出来的鼠标和键盘操作及其相对应的操作对象形成一个操作集合,并按时间顺序进行排列。
本发明的第二个发明目的在于提供一种软件错误自动重现和定位的系统,以应用本发明的第一个发明目的所提供的一种软件错误自动重现和定位的方法。
本发明的第二个发明目的采用如下技术方案实现:
一种软件错误自动重现和定位的系统,所述系统包括记录模块、解析模块和模拟模块:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东威创视讯科技股份有限公司,未经广东威创视讯科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110129892.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:光幕式客流计数器
- 下一篇:一种移动终功能开关集的人机交互方式





