一种页面兼容性测试系统和方法技术方案

技术编号:15437146 阅读:87 留言:0更新日期:2017-05-25 19:20
本发明专利技术公开了一种页面兼容性测试系统,包括:前端模块和后端模块;前端模块,用于在用户设定的开始扫描到结束扫描这一时间段内,利用Fiddler插件进行以下处理:抓取对测试页面进行操作过程中所产生的符合预定要求的请求,并从抓取到的请求中过滤出预定类型的文件,将过滤出的各文件发送给后端模块;后端模块,用于对过滤出的各文件进行兼容性扫描,得到兼容性测试结果。本发明专利技术同时公开了一种页面兼容性测试方法。应用本发明专利技术所述方案,能够提高测试效率等。

System and method for testing page compatibility

The invention discloses a page compatibility testing system, including front-end module and back-end module; the front-end module, for the user to set the end to start scanning scanning this period of time, the following processing using the Fiddler plugin: crawl on the test page generated in the process of operation in accordance with the predetermined requirements of the request, and from grab the request to filter out the predetermined type of file, send the filtered documents to each back-end module; back-end module, used to scan all files to filter out the compatibility, compatibility test results obtained. The invention discloses a page compatibility testing method at the same time. By using the scheme of the invention, the testing efficiency can be improved, etc..

【技术实现步骤摘要】
一种页面兼容性测试系统和方法
本专利技术涉及互联网领域,特别涉及一种页面兼容性测试系统和方法。
技术介绍
电商平台移动端H5页面,为使其能够适用于各种不同的终端设备和软件版本等,需要预先分别进行兼容性测试。现有技术中,主要采用用户(测试人员)手动的方式,进行以下各方面的兼容性测试:操作系统/平台兼容、浏览器兼容、屏幕尺寸/分辨率兼容等。但是,这种测试方式比较耗时,且重复工作量很大,从而导致测试效率低下。
技术实现思路
有鉴于此,本专利技术提供了一种页面兼容性测试系统和方法,能够提高测试效率。为了达到上述目的,本专利技术的技术方案是这样实现的:一种页面兼容性测试系统,包括:前端模块和后端模块;所述前端模块,用于在用户设定的开始扫描到结束扫描这一时间段内,利用Fiddler插件进行以下处理:抓取对测试页面进行操作过程中所产生的符合预定要求的请求,并从抓取到的请求中过滤出预定类型的文件,将过滤出的各文件发送给所述后端模块;所述后端模块,用于对过滤出的各文件进行兼容性扫描,得到兼容性测试结果。一种页面兼容性测试方法,包括:在用户设定的开始扫描到结束扫描这一时间段内,利用Fiddler插件抓取对测试页面进行操作过程中所产生的符合预定要求的请求,并从抓取到的请求中过滤出预定类型的文件;对过滤出的各文件进行兼容性扫描,得到兼容性测试结果。可见,采用本专利技术所述方案,能够快速扫描出可能存在的兼容性问题,从而提高了测试效率,而且,节省了大量的人力成本,另外,本专利技术所述方案实现起来简单方便,从而便于进行普及和推广。附图说明图1为本专利技术页面兼容性测试系统实施例的组成结构示意图。图2为本专利技术所述Fiddler插件的demo图。图3为本专利技术页面兼容性测试方法实施例的流程图。具体实施方式为了使本专利技术的技术方案更加清楚、明白,以下参照附图并举实施例,对本专利技术所述方案作进一步的详细说明。图1为本专利技术页面兼容性测试系统实施例的组成结构示意图,如图1所示,包括:前端模块和后端模块。前端模块,用于在用户设定的开始扫描到结束扫描这一时间段内,利用Fiddler插件进行以下处理:抓取对测试页面进行操作过程中所产生的符合预定要求的请求,并从抓取到的请求中过滤出预定类型的文件,将过滤出的各文件发送给后端模块;后端模块,用于对过滤出的各文件进行兼容性扫描,得到兼容性测试结果。其中,符合预定要求的请求可包括:响应包中的超文本传输协议(http)状态码为2xx且包体内容不为空的请求。预定类型的文件可包括以下之一或任意组合:超文本标记语言(HTML)文件、层叠样式表(CSS)文件、JS(JavaScript)文件。如图3所示,后端模块中又可具体包括:扫描子模块和报告子模块。扫描子模块,用于针对过滤出的各文件,分别根据预先生成的兼容性问题知识库对该文件进行兼容性分析,得到分析结果;根据各分析结果生成预定格式的扫描报告素材,发送给报告子模块;报告子模块,用于对接收到的扫描报告素材进行保存,当用户请求查看兼容性测试结果时,将所述扫描报告素材加载到预先生成的报告模版中,呈现在用户的浏览器中。另外,Fiddler插件还可进一步用于,对过滤出的各文件进行压缩打包,将得到的压缩包发送给扫描子模块;相应的,扫描子模块还可进一步用于,在对过滤出的各文件进行兼容性扫描之前,对接收到的压缩包进行解压,得到过滤出的各文件。结合上述介绍,以下分别对Fiddler插件和后端模块的具体实现进行进一步的详细说明。(一)Fiddler插件图2为本专利技术所述Fiddler插件的demo图,如图2所示,用户点击“开始扫描”,并可通过APP或手机浏览器等访问测试页面(如http://www.jd.com)并进行操作,如输入关键词进行搜索等,操作完成后,可点击“结束扫描”。另外,用户可预先勾选需要扫描的文件类型,如图2所示,其中的“全部扫描”即表示需要对HTML文件、CSS文件和JS文件均进行扫描,假设本实施例中勾选“全部扫描”。从开始扫描到结束扫描这一时间段内,Fiddler插件会抓取对测试页面进行操作过程中所产生的符合预定要求的请求,主要是对响应包中的http状态码为2xx且包体内容不为空的请求进行抓取,并可根据响应头中的Content-Type字段进行文件类型判断,过滤出所需的HTML文件、CSS文件和JS文件,较佳的,还可对过滤出的各文件进行Gzip压缩打包,将得到的压缩包发送给后端模块。Fiddler是一个http协议调试代理工具,为实现本专利技术所述功能,需要对现有Fiddler进行扩展,具体扩展方式如下:客户端方面,使用.net框架语言进行Fiddler扩展,具体表现形式为用接口描述语言(IDE)建立一个C#的类库项目,生成一个动态链接库(DLL)文件,将其放到Fiddler安装文件中的Scripts文件夹;可使用Fiddler相关扩展的接口,如IAutoTamper接口里的OnLoad()方法提供相关用户界面(UI)扩展,另外,IFiddlerExtension接口中提供了对每一个http/https发送和接收请求的调用,可修改,记录,或其它操作。(二)后端模块如前所述,后端模块中可具体包括:扫描子模块和报告子模块。扫描子模块接收到Fiddler插件发送来的压缩包后,可对其进行解压,得到过滤出的各文件,并可进一步识别各文件的类型是否为HTML、CSS或JS,忽略不需要进行扫描的文件等,之后,可针对每个文件,分别根据预先生成的兼容性问题知识库对该文件进行兼容性分析,即对该文件进行代码分析并与兼容性问题知识库中的内容进行匹配等,得到分析结果,并根据各分析结果生成预定格式的扫描报告素材,发送给报告子模块。兼容性问题知识库主要从业界已积累的兼容性问题以及实际工作中反馈、搜集等得到的产品问题分析和转化而来,支持对兼容性问题知识库进行随时更新。兼容性问题知识库中中的内容可分为两类,即正则表达式和检测脚本,其中,正则表达式主要用于代码的按行分析,检测脚本主要用于识别按行分析无法识别的问题。如何得到分析结果为现有技术,另外,所述预定格式可为可扩展标记语言(XML)格式或Json格式等,如何根据各分析结果生成预定格式的扫描报告素材同样为现有技术。报告子模块可对接收到的扫描报告素材进行保存,同时保存有预先生成的报告模版,当用户请求查看兼容性测试结果时,可将扫描报告素材加载到报告模版中,呈现在用户的浏览器中。如图2所示,当用户点击“查看结果”时,可跳转到相应的统一资源定位符(URL)对应的页面进行测试结果展示。当然,以上仅为举例说明,在实际应用中,也可以采用其它方式,如将兼容性测试结果直接发送到用户指定的邮箱中,以供用户查看。基于上述介绍,本专利技术同时公开了一种页面兼容性测试方法。图3为本专利技术页面兼容性测试方法实施例的流程图,如图3所示,包括以下步骤31~32。步骤31:在用户设定的开始扫描到结束扫描这一时间段内,利用Fiddler插件抓取对测试页面进行操作过程中所产生的符合预定要求的请求,并从抓取到的请求中过滤出预定类型的文件。其中,符合预定要求的请求可包括:响应包中的http状态码为2xx且包体内容不为空的请求。预定类型的文件可包括以下之一或任意组合:HTML文件、CSS文件、JS文件。步骤3本文档来自技高网...
一种页面兼容性测试系统和方法

【技术保护点】
一种页面兼容性测试系统,其特征在于,包括:前端模块和后端模块;所述前端模块,用于在用户设定的开始扫描到结束扫描这一时间段内,利用Fiddler插件进行以下处理:抓取对测试页面进行操作过程中所产生的符合预定要求的请求,并从抓取到的请求中过滤出预定类型的文件,将过滤出的各文件发送给所述后端模块;所述后端模块,用于对过滤出的各文件进行兼容性扫描,得到兼容性测试结果。

【技术特征摘要】
1.一种页面兼容性测试系统,其特征在于,包括:前端模块和后端模块;所述前端模块,用于在用户设定的开始扫描到结束扫描这一时间段内,利用Fiddler插件进行以下处理:抓取对测试页面进行操作过程中所产生的符合预定要求的请求,并从抓取到的请求中过滤出预定类型的文件,将过滤出的各文件发送给所述后端模块;所述后端模块,用于对过滤出的各文件进行兼容性扫描,得到兼容性测试结果。2.根据权利要求1所述的系统,其特征在于,所述符合预定要求的请求包括:响应包中的超文本传输协议http状态码为2xx且包体内容不为空的请求。3.根据权利要求1所述的系统,其特征在于,所述预定类型的文件包括以下之一或任意组合:超文本标记语言HTML文件、层叠样式表CSS文件、JS文件。4.根据权利要求1、2或3所述的系统,其特征在于,所述后端模块中包括:扫描子模块和报告子模块;所述扫描子模块,用于针对过滤出的各文件,分别根据预先生成的兼容性问题知识库对该文件进行兼容性分析,得到分析结果;根据各分析结果生成预定格式的扫描报告素材,发送给所述报告子模块;所述报告子模块,用于对所述扫描报告素材进行保存,当用户请求查看兼容性测试结果时,将所述扫描报告素材加载到预先生成的报告模版中,呈现在用户的浏览器中。5.根据权利要求4所述的系统,其特征在于,所述Fiddler插件进一步用于,对过滤出的各文件进行压缩打包,将得到的压...

【专利技术属性】
技术研发人员:林伟腾陈中兵曾晓东
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1