[发明专利]一种生成浏览器测试脚本的方法及装置在审
申请号: | 201410085844.0 | 申请日: | 2014-03-10 |
公开(公告)号: | CN103885878A | 公开(公告)日: | 2014-06-25 |
发明(设计)人: | 杨光宇;衣安平;刘增;刘玮 | 申请(专利权)人: | 烟台中科网络技术研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 杨立 |
地址: | 264003 山东省烟台*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 生成 浏览器 测试 脚本 方法 装置 | ||
技术领域
本发明涉及浏览器技术领域,更具体地说,涉及一种生成浏览器测试脚本的方法及装置。
背景技术
随着互联网技术的不断发展,浏览器成为了获取信息的重要工具。另一方面,随着消费电子、计算机、通信的一体化趋势,浏览器也随之出现。浏览器是通过解析网页程序代码来显示网页内容,然而目前,网站的后端架构千差万别,前端页面实现技术也多种多样,需要统一的标准录制脚本。
WEB支持动态页面,导致浏览器通过超文本协议(Hypertext transfer protocol,HTTP)与服务器进行交互的数据存在差异。动态数据依靠人工判别工作量大,误判率高。而HTTP交互发出的数据是有浏览器解析,处理顺序不确定,发送返回内容不固定,需要多种技术配合才能达到网页级别录制效果,而市场上主流录制工具的脚本,大部分是采用基于HTTP请求头级别的,脚本繁琐参数化不易,以录制www.hao123.com为例,基于HTTP请求头级别的会产生37个函数,而基于网页级别的录制只会产生1个函数。基于网页级别录制脚本可读性好,逻辑结构清晰,参数化工作量少,定位问题方便。
目前的测试工具有如下缺点,例如:JMeter脚本输出格式为XML,不能进行扩展,无法支持动态页面,不方便定位问题。Performance Runer只能在HTTP层次模拟用户行为,不能在页面层次模拟用户行为,很难支持对动态页面的测试,测试人员工作量大。Load Runner可以支持动态页面,支持HTTP页面级别的录制,但是属于商业软件,代码不公开,收费昂贵。因此,迫切需要一种技术方案解决测试人员要求录制过程要简单,需要高效,准确,易读易修改,易扩展的测试脚本。需要具有回放功能,提高脚本验证效率。
发明内容
本发明所要解决的技术问题是针对现有技术的不足,提供一种生成浏览器测试脚本方法。
本发明解决上述技术问题的技术方案如下:一种生成浏览器测试脚本方法,包括以下步骤:
脚本录制器检测浏览器与代理服务器之间的信息是否存在会话内容;
当所述浏览器与所述代理服务器之间的信息存在会话内容时,所述脚本录制器监听所述浏览器的页面信息、并将所述浏览器与所述代理服务器之间的会话内容记录存储;
所述脚本录制器根据监听到的所述浏览器的页面信息生成基于页面的函数语句,并根据所述的函数语句生成初级脚本;
所述脚本录制器根据监听到的会话内容产生Http会话序列;
所述脚本录制器对生成的初级脚本及监听Http会话序列进行筛选,并判断Http会话序列是否可生成新的脚本语句,如果是,则添加新脚本语句,生成最终脚本,并将最终脚本保存,结束;如果否,则补充脚本语句,生成最终脚本,并将最终脚本保存,结束。
进一步,所述脚本录制器根据监听到的所述浏览器的页面信息生成基于页面的函数语句,具体实现如下:
所述页面信息包含浏览器页面解析的开端、浏览器基于完成页面解析的信息,新浏览器打开窗口信息,所述脚本录制器根据浏览器响应的请求头、返回头、返回数据包含的页面信息生成基于信息页面的函数语句;
进一步,所述根据所述的函数语句生成初级脚本,具体实现如下:
所述脚本录制器根据监听浏览器消息创建对应的模拟浏览器窗口;
所述模拟浏览器窗口根据监听的浏览器信息,对所述浏览器的窗口内容、属性及New Window事件、Before Navigate事件和Document Complete事件进行源码解析;
所述脚本录制器根据源码解析的结果生出基于HTML页面的初级脚本。
进一步,所述的Before Navigate事件可以根据页面的单一框架或者多框架获取浏览器页面当前加载的URL。
进一步,所述脚本录制器根据监听到的会话内容产生Http会话序列,具体实现如下:
所述脚本录制器监听浏览器与服务器之间信息是否存在会话内容,当存在会话内容时,将所述浏览器与所述代理服务器之间的会话内容记录存储,并根据会话内容产生Http会话序列。
进一步,所述脚本录制器对生成的初级脚本及Http会话序列进行筛选,具体实现如下:
所述脚本录制器查找会话内容中所有的Get请求,筛选出为资源类型的请求,并且满足Referer字段为Before Navigate事件输出的URL的请求;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烟台中科网络技术研究所,未经烟台中科网络技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410085844.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种轻质蒸压砂加气混凝土砌块墙体
- 下一篇:一种数据交换方法、系统及MGC