一种浏览器回归测试的方法及系统的制作方法

文档序号:6331235阅读:142来源:国知局
专利名称:一种浏览器回归测试的方法及系统的制作方法
技术领域
本发明涉及计算机软件测试技术领域,具体涉及一种浏览器回归测试的方法及系 统。
背景技术
随着3C融合时代的到来,越来越多的消费类电子产品中有浏览器应用的需求,目 前,数字电视机顶盒、IPTV机顶盒、数字电视一体机和手机等等产品中很多都已支持浏览器 应用。由于消费类电子产品本身的CPU处理能力低、内存容量受限。低功耗等一些特性, 加大了嵌入式浏览器开发、裁剪、移植的的难度。测试工作的工作量也随着增大,而且很多 测试工作是重复性的,回归测试就一种是大量的重复行测试工作,是软件测试中一种重要 的测试。软件开发过程中出现的各种变化可能会给软件的质量带来副作 用。回归测试就是 用来监控软件的变化,及时反馈由变化带来的结果。回归测试需要反复进行,当测试者一次 又一次地完成相同的测试时,这些回归测试将变得非常令人厌烦,而在大多数回归测试需 要手工完成的时候尤其如此,因此,需要通过自动测试来实现重复的和一致的回归测试。通 过测试自动化可以提高回归测试效率。对于机顶盒浏览器来说,只有按键操作,没有像鼠标 这样的定位信息,从而无法实现高效的回归测试。

发明内容
本发明提供一种浏览器回归测试的自动化方法及系统,能够实现浏览器回归测试 自动化,从而有效的提高测试人员的工作效率。本发明提供一种浏览器回归测试的自动化方法,包括注册捕获事件钩子,按键事 件过滤与记录,虚拟按键合成,重定向标准按键,虚拟按键发送。主要的思想是通过记录人 工测试的按键信息来回放测试过程,从而实现回归测试自动化,也即注册捕获事件的钩子 函数,过滤出按键事件并记录相应的键值。在测试回放过程中首先要读取键值,而后根据键 值合成本地虚拟按键消息,再将虚拟按键重定向为标准虚拟按键消息,最后发给被测程序。本发明提供一种浏览器回归测试的自动化系统,包括注册捕获事件钩模块是为了获得手工测试过程中的原始数据,通过注册钩子函数 来实现对事件获取,在这一模块中可以通过参数来选择是只获取按键事件还是获取全部事 件,在这里选择获取全部事件;按键事件过滤与记录模块负责将钩子函数捕获的事件过滤,将过滤出来的按键消 息对应的键值记录到按键记录文件。文件的整个按键键值序列就是用户测试过程回放的 依据。同时记录文件还应记录时间发生的时间,这样可以通过一阶差分来实现按键间隔时 间;虚拟按键合成模块负责将按键文件的键值转化为按键消息,由于在监听记录过程 中记录的是键值,而被测应用程序接收的是按键消息,因而必须将按键记录文件的按键键值序列转化成按键消息序列。由于虚拟按键的合成非常快,为了避免消息处理不过来,还需要要还原事件时间间隔,也就是按键记录文件中的按键时间的一阶差分来控制虚拟按键合 成的速度。将合成的虚拟按键消息添加到虚拟按键消息队列;重定向标准按键模块负责将本地虚拟按键事件转化为应用程序的标准按键事件, 典型的例子如机顶盒遥控通过左右键来控制焦点,因而我们记录的是左右键的键值,但应 用程序是通过Tab键或Shift+Tab来实现焦点跳转,所以需要将左右键重定向为Tab键或 Shift+Tab。发送消息模块负责将重定向后的标准按键序列发送给被测应用程序,从而实现自 动化测试等功能。通过实施本发明,可以通过跟踪手动测试的测试过程,记录按键信息,在之后的回 归测试中通过将记录的按键信息进行虚拟按键模拟来实现自动化测试,从而实现提高测试效率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可 以根据这些附图获得其他的附图。图1为本发明实施例中的浏览器回归测试的自动化系统结构示意图;图2为本发明实施例中的实现机顶盒浏览器回归测试的方法流程图;图3为本发明实施例中的实现机顶盒浏览器回归测试中的事件记录的流程图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它 实施例,都属于本发明保护的范围。具体的,本发明实施例子中提供了一种浏览器回归测试的自动化方法,包括注册 捕获事件钩子,按键事件过滤与记录,虚拟按键合成,重定向标准按键,虚拟按键发送。主要 的思想是通过记录人工测试的按键信息来回放测试过程,从而实现回归测试自动化,也即 注册捕获事件的钩子函数,过滤出按键事件并记录相应的键值。在测试回放过程中首先要 读取键值,而后根据键值合成本地虚拟按键消息,再将虚拟按键重定向为标准虚拟按键消 息,最后发给被测程序。需要说明的是,在注册捕获事件钩子中以按键序列为注册基础,按键序列通过钩 子函数获得。将按键序列中的键值转化为虚拟按键消息。具体的,图1示出了本发明实施例中的浏览器回归测试的自动化系统,包括注册捕获事件钩模块是为了获得手工测试过程中的原始数据,通过注册钩子函数 来实现对事件获取,在这一模块中可以通过参数来选择是只获取按键事件还是获取全部事 件,在这里选择获取全部事件。
按键事件过滤与记录模块负责将钩子函数捕获的事件过滤,将过滤出来的按键消 息对应的键值记录到按键记录文件。文件的整个按键键值序列就是用户测试过程回放的依 据。同时记录文件还应记录时间发生的时间,这样可以通过一阶差分来实现按键间隔时间。虚拟按键合成模块负责将按键文件的键值转化为按键消息,由于在监听记录过程 中记录的是键值,而被测应用程序接收的是按键消息,因而必须将按键记录文件的按键键 值序列转化成按键消息序列。由于虚拟按键的合成非常快,为了避免消息处理不过来,还需 要要还原事件时间间隔,也就是按键记录文件中的按键时间的一阶差分来控制虚拟按键合 成的速度。将合成的虚拟按键消息添加到虚拟按键消息队列。
本地虚拟按键事件转化为应用程序的标准按键事件, 典型的例子如机顶盒遥控通过左右键来控制焦点,因而我们记录的是左右键的键值,但应 用程序是通过Tab键或Shift+Tab来实现焦点跳转,所以需要将左右键重定向为Tab键或 Shift+Tab。发送消息模块负责将重定向后的标准按键序列发送给被测应用程序,从而实现自 动化测试等功能。相应的,图2示出了本发明实施例中的实现机顶盒浏览器回归测试的方法流程 图,具体的,本实施实现机顶盒浏览器回归测试的方法的步骤如下步骤S201,执行手工测试。这是之后回归测试基础,测试系统就是通过记录工作测 试过程,再通过回放来实现测试自动化。步骤S202,通过钩子监听手工测试的消息事件。这个动作需要一直进行直到手工 测试完毕。步骤S203,记录按键键值。首先要将钩子监听到的按键时间过滤出来,而后将其键 值以及按键时间记录到按键记录文件。步骤S204,判断手工测试是否结束,如果结束则转S105,否则转S102。判断手工测试是否结束可以通过设定测试过程中没有用到的按键或者组合按键。步骤S205,运行被测浏览器。当手工测试完后,就可以根据按键记录文件来实现回 归测试的自动化。步骤S206,读取按键记录。当被测浏览器运行起来后,就可以开始自动化测试,也 即开始读取按键记录。步骤S207,模拟按键。由于S206中读取的是按键键值,因而需要把它转化为按键消息。步骤S208,向应用程序发送虚拟按键。在发送之前还需要检测按键是否需要重定 向。步骤S209,判断按键是否结束,如果是则完成测试,否则转S206。相应的,图3示出了本发明实施例中的实现机顶盒浏览器回归测试中的事件记录 的流程图,包括如下步骤S301 注册钩子;S302 监听事件;S303 判断是否为按键事件,如果是,则进行S304,如果不是则继续S302 ;S304:记录键值;
S305 判断是否为结束事件,如果是,则结束,如果不是则进行S302。综上,本发明实施例,可以通过跟踪手动测试的测试过程,记录按键信息,在之后 的回归测试中通过将记录的按键信息进行虚拟按键模拟来实现自动化测试,从而实现提高 测试效率以上对本发明实施例进行了详细介绍,本文中应用了具体个例对本发明的原理及 实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想; 同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会 有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
一种浏览器回归测试的方法,其特征在于,包括注册捕获事件钩子;按键事件过滤与记录;虚拟按键合成;重定向标准按键;虚拟按键发送。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括在注册捕获事件钩子中以按键序列为注册基础,按键序列通过钩子函数获得。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括 将按键序列中的键值转化为虚拟按键消息。
4.一种浏览器回归测试的系统,其特征在于,包括注册捕获事件钩模块,用于通过注册钩子函数来实现对事件获取; 按键事件过滤与记录模块,用于负责将钩子函数捕获的事件过滤,将过滤出来的按键 消息对应的键值记录到按键记录文件;虚拟按键合成模块,用于负责将按键文件的键值转化为按键消息,由于在监听记录过 程中记录的是键值,而被测应用程序接收的是按键消息,因而必须将按键记录文件的按键 键值序列转化成按键消息序列;重定向标准按键模块,用于负责将本地虚拟按键事件转化为应用程序的标准按键事件;发送消息模块,用于负责将重定向后的标准按键序列发送给被测应用程序。
5.根据权利要求4所述的一系统,其特征在于按键事件过滤与记录模块中的按键记 录文件不仅要记录按键键值序列,同时记录文件还应记录时间发生的时间。
6.根据权利要求4所述的系统,其特征在于,虚拟按键合成模块负责将按键文件的键 值转化为按键消息,把按键记录文件的按键键值序列转化成按键消息序列。
7.根据权利要求4所述的系统,其特征在于,虚拟按键合成模块还用于还原事件时间 间隔,通过按键记录文件中的按键时间的一阶差分来控制虚拟按键合成的速度。
8.根据权利要求4所述的系统,其特征在于,重定向标准按键模块用于将本地虚拟按 键事件转化为应用程序的标准按键事件,将机顶盒遥控通过左右键来控制焦点重定向为应 用程序通过Tab键或Shift+Tab来实现焦点跳转。
全文摘要
本发明实施例公开了一种浏览器回归测试的方法,包括注册捕获事件钩子;按键事件过滤与记录;虚拟按键合成;重定向标准按键;虚拟按键发送。相应的,本发明实施例还公开了一种浏览器回归测试的系统,包括注册捕获事件钩模块,按键事件过滤与记录模块,虚拟按键合成模块,重定向标准按键模块,发送消息模块。通过实施本发明,可以通过跟踪手动测试的测试过程,记录按键信息,在之后的回归测试中通过将记录的按键信息进行虚拟按键模拟来实现自动化测试,从而实现提高测试效率。
文档编号G06F11/36GK101937393SQ20101026873
公开日2011年1月5日 申请日期2010年8月31日 优先权日2010年8月31日
发明者罗笑南, 雷曾荣 申请人:中山大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1