基于钩子函数的图形界面程序测试日志记录及回放方法与流程

文档序号:11154850阅读:425来源:国知局
基于钩子函数的图形界面程序测试日志记录及回放方法与制造工艺

本发明属于软件测试技术领域,具体涉及一种基于钩子函数的图形界面程序测试日志记录及回放方法。



背景技术:

软件测试是保证软件质量的重要方法,而在软件测试过程中,详细、准确的测试记录文档可以规范测试工作流程,减少测试人员及开发人员的沟通成本,并使得测试工作便于分析与总结。

专利201010253925.2公开了一种对软件测试进行记录的方法,所述方法包括以下步骤:在执行测试用例时,通过钩子技术捕获动作被测试软件时产生的鼠标消息和被测软件的反馈信息,获得测试流程信息,并记录下来;软件测试结束后,根据记录的测试流程信息,生成测试记录文档。该发明通过钩子技术记录测试过程,在测试软件的同时生成测试记录等文档,大大节省测试时间;同时,实时地记录测试过程中的每一步动作,不会造成遗漏,生成的测试文档准确规范。

在工业等对软件可靠性要求极高的场景应用中,需要进行长时间的测试工作,如果使用专利201010253925.2提供的测试纪录自动生成的方法,会产生大量日志,当程序出现问题时,开发人员面对如此多的测试记录,将无法快速找到造成问题的原因。



技术实现要素:

(一)要解决的技术问题

本发明要解决的技术问题是:如何使程序开发人员在面对大量程序测试记录时,能够快速找到造成程序出现问题的原因。

(二)技术方案

为解决上述技术问题,本发明提供一种基于钩子函数的图形界面程序测试日志记录及回放方法,其特征在于,该方法基于程序测试日志及回放系统来实施,所述程序测试日志及回放系统包括:用户动作记录模块、日志存储模块、日志解析模块以及回放模块;

该方法包括如下步骤:

步骤1:由用户动作记录模块通过开始、暂停或结束指令来记录用户的动作,生成用户的各种动作序列及触发时间;

当用户通过键盘输入或点击鼠标时,会触发Windows系统的一条消息,在鼠标点击动作发生时,这条消息包括鼠标点击的位置、时间、以及包括单击、双击、右击在内的点击模式,Windows系统在处理这条消息之前,会被日志钩子先一步截获,此时,将日志钩子截获的消息复制一份加入用户动作序列链表中,并且交给日志存储模块进行保存,重复此过程,用户动作记录模块就记录下用户的各种动作序列,生成日志记录;

步骤2:由日志存储模块将用户的各种动作序列及触发时间,按照自定义格式保存,并且按照用户指定的文件名存储为文本文件,作为日志记录;

步骤3:由日志解析模块提取日志记录中用户的动作序列及动作的触发时间;

步骤4:由日志回放模块提供与用户动作回放相关的功能,包括回放的开始、暂停、结束,以及多种控制速度和回放位置选择;

其中,日志解析模块首先进行日志的解析,分析出用户动作的总时间,然后按照用户的选择,在日志记录中从用户指定的回放时间处提取用户动作序列,然后按照用户指定的回放速度,将各动作时间按相同比例延长或缩短为用户指定的回放速率倍数。

(三)有益效果

与现有技术相比较,本发明技术方案中,程序测试人员通过使用测试记录程序的日志记录钩子将被测程序的测试过程记录于文本中。程序开发人员在回放软件测试过程时,通过测试回放程序中的日志回放钩子加载测试文本中的测试过程,并可通过调整测试记录程序的回放设置来控制回放的速度与进度。

本发明可以帮助程序开发人员在大量的测试记录中,快速发现造成程序问题的原因。

附图说明

图1-图3为本发明技术方案原理示意图。

具体实施方式

为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

为解决现有技术的问题,本发明提供一种基于钩子函数的图形界面程序测试日志记录及回放方法,如图1所示,该方法基于程序测试日志及回放系统来实施,所述程序测试日志及回放系统包括:用户动作记录模块、日志存储模块、日志解析模块以及回放模块;

该方法包括如下步骤:

步骤1:由用户动作记录模块通过开始、暂停或结束指令来记录用户的动作,生成用户的各种动作序列及触发时间;

如图2所示,当用户通过键盘输入或点击鼠标时,会触发Windows系统的一条消息,在鼠标点击动作发生时,这条消息包括鼠标点击的位置、时间、以及包括单击、双击、右击在内的点击模式,Windows系统在处理这条消息之前,会被日志钩子先一步截获,此时,将日志钩子截获的消息复制一份加入用户动作序列链表中,并且交给日志存储模块进行保存,重复此过程,用户动作记录模块就记录下用户的各种动作序列,生成日志记录;

步骤2:由日志存储模块将用户的各种动作序列及触发时间,按照自定义格式保存,并且按照用户指定的文件名存储为文本文件,作为日志记录;

步骤3:由日志解析模块提取日志记录中,用户的动作序列及动作的触发时间;

步骤4:由日志回放模块提供与用户动作回放相关的功能,包括回放的开始、暂停、结束,以及多种控制速度和回放位置选择;

如0.5倍速,1倍速,2倍速等来控制程序回放速度;并且,还可以选择回放进度,如回放到测试过程的25%,50%,75%等,来方便程序开发人员观察程序测试结果;

其中,如图3所示,日志解析模块首先进行日志的解析,分析出用户动作的总时间,然后按照用户的选择,在日志记录中从用户指定的回放时间处提取用户动作序列,然后按照用户指定的回放速度,将各动作时间按相同比例延长或缩短为用户指定的回放速率倍数。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1