CN101937393A - 一种浏览器回归测试的方法及系统 - Google Patents
一种浏览器回归测试的方法及系统 Download PDFInfo
- Publication number
- CN101937393A CN101937393A CN 201010268737 CN201010268737A CN101937393A CN 101937393 A CN101937393 A CN 101937393A CN 201010268737 CN201010268737 CN 201010268737 CN 201010268737 A CN201010268737 A CN 201010268737A CN 101937393 A CN101937393 A CN 101937393A
- Authority
- CN
- China
- Prior art keywords
- key
- press
- record
- event
- virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明实施例公开了一种浏览器回归测试的方法,包括:注册捕获事件钩子;按键事件过滤与记录;虚拟按键合成;重定向标准按键;虚拟按键发送。相应的,本发明实施例还公开了一种浏览器回归测试的系统,包括:注册捕获事件钩模块,按键事件过滤与记录模块,虚拟按键合成模块,重定向标准按键模块,发送消息模块。通过实施本发明,可以通过跟踪手动测试的测试过程,记录按键信息,在之后的回归测试中通过将记录的按键信息进行虚拟按键模拟来实现自动化测试,从而实现提高测试效率。
Description
技术领域
本发明涉及计算机软件测试技术领域,具体涉及一种浏览器回归测试的方法及系统。
背景技术
随着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。
综上,本发明实施例,可以通过跟踪手动测试的测试过程,记录按键信息,在之后的回归测试中通过将记录的按键信息进行虚拟按键模拟来实现自动化测试,从而实现提高测试效率
以上对本发明实施例进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种浏览器回归测试的方法,其特征在于,包括:
注册捕获事件钩子;
按键事件过滤与记录;
虚拟按键合成;
重定向标准按键;
虚拟按键发送。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在注册捕获事件钩子中以按键序列为注册基础,按键序列通过钩子函数获得。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
将按键序列中的键值转化为虚拟按键消息。
4.一种浏览器回归测试的系统,其特征在于,包括:
注册捕获事件钩模块,用于通过注册钩子函数来实现对事件获取;
按键事件过滤与记录模块,用于负责将钩子函数捕获的事件过滤,将过滤出来的按键消息对应的键值记录到按键记录文件;
虚拟按键合成模块,用于负责将按键文件的键值转化为按键消息,由于在监听记录过程中记录的是键值,而被测应用程序接收的是按键消息,因而必须将按键记录文件的按键键值序列转化成按键消息序列;
重定向标准按键模块,用于负责将本地虚拟按键事件转化为应用程序的标准按键事件;
发送消息模块,用于负责将重定向后的标准按键序列发送给被测应用程序。
5.根据权利要求4所述的一系统,其特征在于:按键事件过滤与记录模块中的按键记录文件不仅要记录按键键值序列,同时记录文件还应记录时间发生的时间。
6.根据权利要求4所述的系统,其特征在于,虚拟按键合成模块负责将按键文件的键值转化为按键消息,把按键记录文件的按键键值序列转化成按键消息序列。
7.根据权利要求4所述的系统,其特征在于,虚拟按键合成模块还用于还原事件时间间隔,通过按键记录文件中的按键时间的一阶差分来控制虚拟按键合成的速度。
8.根据权利要求4所述的系统,其特征在于,重定向标准按键模块用于将本地虚拟按键事件转化为应用程序的标准按键事件,将机顶盒遥控通过左右键来控制焦点重定向为应用程序通过Tab键或Shift+Tab来实现焦点跳转。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010268737 CN101937393A (zh) | 2010-08-31 | 2010-08-31 | 一种浏览器回归测试的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010268737 CN101937393A (zh) | 2010-08-31 | 2010-08-31 | 一种浏览器回归测试的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101937393A true CN101937393A (zh) | 2011-01-05 |
Family
ID=43390733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010268737 Pending CN101937393A (zh) | 2010-08-31 | 2010-08-31 | 一种浏览器回归测试的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101937393A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102355602A (zh) * | 2011-11-02 | 2012-02-15 | 四川长虹电器股份有限公司 | 一种机顶盒模拟按键处理的方法 |
CN103838673A (zh) * | 2014-03-05 | 2014-06-04 | 广东小天才科技有限公司 | 一种自动化测试方法和装置 |
CN103885878A (zh) * | 2014-03-10 | 2014-06-25 | 烟台中科网络技术研究所 | 一种生成浏览器测试脚本的方法及装置 |
WO2015062003A1 (en) * | 2013-10-31 | 2015-05-07 | Hewlett-Packard Development Company, L.P. | User interface tester |
CN104809061A (zh) * | 2015-04-09 | 2015-07-29 | 百度在线网络技术(北京)有限公司 | 回归测试方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101175284A (zh) * | 2006-11-01 | 2008-05-07 | 联想移动通信科技有限公司 | 一种便携式电子设备的功能测试方法 |
CN101242621A (zh) * | 2008-01-21 | 2008-08-13 | 中兴通讯股份有限公司 | 一种基于界面的自动化测试方法及系统 |
CN101620564A (zh) * | 2008-06-30 | 2010-01-06 | 福建升腾资讯有限公司 | 终端系统的录制回放模式自动化测试方法 |
-
2010
- 2010-08-31 CN CN 201010268737 patent/CN101937393A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101175284A (zh) * | 2006-11-01 | 2008-05-07 | 联想移动通信科技有限公司 | 一种便携式电子设备的功能测试方法 |
CN101242621A (zh) * | 2008-01-21 | 2008-08-13 | 中兴通讯股份有限公司 | 一种基于界面的自动化测试方法及系统 |
CN101620564A (zh) * | 2008-06-30 | 2010-01-06 | 福建升腾资讯有限公司 | 终端系统的录制回放模式自动化测试方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102355602A (zh) * | 2011-11-02 | 2012-02-15 | 四川长虹电器股份有限公司 | 一种机顶盒模拟按键处理的方法 |
WO2015062003A1 (en) * | 2013-10-31 | 2015-05-07 | Hewlett-Packard Development Company, L.P. | User interface tester |
CN103838673A (zh) * | 2014-03-05 | 2014-06-04 | 广东小天才科技有限公司 | 一种自动化测试方法和装置 |
CN103838673B (zh) * | 2014-03-05 | 2017-04-19 | 广东小天才科技有限公司 | 一种自动化测试方法和装置 |
CN103885878A (zh) * | 2014-03-10 | 2014-06-25 | 烟台中科网络技术研究所 | 一种生成浏览器测试脚本的方法及装置 |
CN104809061A (zh) * | 2015-04-09 | 2015-07-29 | 百度在线网络技术(北京)有限公司 | 回归测试方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9966076B2 (en) | Voice control system and method | |
CN102831894A (zh) | 指令处理方法、装置和系统 | |
CN103365779B (zh) | 软件测试方法和系统 | |
CN104811812B (zh) | 音视频播放进度的控制方法、装置、和系统 | |
CN102387234A (zh) | 一种手机自动化测试装置及方法 | |
CN101937393A (zh) | 一种浏览器回归测试的方法及系统 | |
CN104602131A (zh) | 一种弹幕处理方法及系统 | |
CN102881307B (zh) | 视音频录播系统及方法 | |
CN103221899B (zh) | 触觉输入设备、微处理器系统和控制触觉输入设备的方法 | |
CN103150112A (zh) | 音频播放的控制方法、装置及终端 | |
CN104102484A (zh) | App操作方法和设备以及支持app操作方法的app输出设备 | |
CN101106698A (zh) | 基于实时监控的历史数据回放方法和系统 | |
CN110071855A (zh) | 设备联动控制方法、装置、系统、网关及存储介质 | |
CN106126424A (zh) | 一种脚本可视化的自动化测试方法、装置和移动终端 | |
CN103514075A (zh) | 在移动终端中监控api函数调用的方法和装置 | |
CN105183631A (zh) | 设备测试方法及装置 | |
CN103067552A (zh) | 手机自动检测系统 | |
CN102541549A (zh) | 集成电视应用模块的方法及装置 | |
CN104092809A (zh) | 通话录音方法、通话录音播放方法及其相应装置 | |
CN102141957A (zh) | 一种远程真机的辅助测试方法、装置与系统 | |
CN103927182A (zh) | 一种利用屏幕截屏结合鼠标键盘操作进行录像的方法 | |
CN101931827A (zh) | 一种事件回放的机顶盒测试方法 | |
DE112011105903T5 (de) | Durch Bewegungserfassung aktivierte energieoptimierte Anzeigevorrichtung | |
CN102519514B (zh) | 电子测试仪器一键式自动测试的实现方法 | |
CN103577060A (zh) | 一种数据处理方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110105 |