CN107133180B - 动态页面的测试方法、测试装置及存储介质 - Google Patents

动态页面的测试方法、测试装置及存储介质 Download PDF

Info

Publication number
CN107133180B
CN107133180B CN201710423557.XA CN201710423557A CN107133180B CN 107133180 B CN107133180 B CN 107133180B CN 201710423557 A CN201710423557 A CN 201710423557A CN 107133180 B CN107133180 B CN 107133180B
Authority
CN
China
Prior art keywords
test
page
browser
code file
tested
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.)
Active
Application number
CN201710423557.XA
Other languages
English (en)
Other versions
CN107133180A (zh
Inventor
王明星
叶飞
詹文强
常瑞超
樊玺
黄晶
蒋康荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201710423557.XA priority Critical patent/CN107133180B/zh
Publication of CN107133180A publication Critical patent/CN107133180A/zh
Application granted granted Critical
Publication of CN107133180B publication Critical patent/CN107133180B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

Abstract

本发明的实施例公开了一种动态页面的测试方法、测试装置及存储介质,所述测试方法包括:拦截浏览器的网页访问请求,并根据网页访问请求从内容服务器中获取原始页面;在原始页面中注入测试脚本的资源地址和测试参数以生成测试页面;向所述浏览器发送所述测试页面,拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果,并将所述规则扫描结果上传至测试服务器。本发明通过在代理中存储代码文件,并通过测试脚本将其注入到原始页面中以生成测试页面,并由浏览器执行测试页面以生成规则扫描结果,不仅可以支持电脑浏览器和移动终端的浏览器,具有兼容性高的优点、同时还提高了测试效率。

Description

动态页面的测试方法、测试装置及存储介质
技术领域
本发明属于数据处理领域,尤其涉及一种动态页面的测试方法、测试装置及存储介质。
背景技术
动态页面(active web page),是网页前端页面的主要展现形式。对动态页面进行自动化规则扫描,可以帮助开发人员和测试人员及时发现动态页面潜在的软件缺陷(Bug)和安全漏洞,有利于提升用户体验。
传统的动态页面自动化扫描工具,是基于电脑版浏览器(PC browser)的插件机制实现的。具体而言,首先通过浏览器接口开发出可以调用浏览器接口的插件,再通过插件向页面中插入测试代码,实现对动态页面的自动化规则扫描。
然而,随着移动终端的发展,基于移动终端的动态页面越来越多,传统的动态页面自动化扫描工具,过于依赖于浏览器类型而导致兼容性差,已不再广泛适用。
发明内容
本发明实施例提供一种动态页面的测试方法、测试装置及存储介质,旨在提高兼容性、同时提高测试效率。
为解决上述技术问题,本发明实施例提供以下技术方案:
一种动态页面的测试方法,包括:
拦截浏览器的网页访问请求,并根据所述网页访问请求从内容服务器中获取原始页面;
在所述原始页面中注入测试脚本的资源地址和测试参数以生成测试页面,其中所述测试脚本的资源地址用于指定待测试的代码文件,所述测试参数用于指定待测试的项目;以及
向所述浏览器发送所述测试页面,拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果,并将所述规则扫描结果上传至测试服务器。
为解决上述技术问题,本发明实施例还提供以下技术方案:
一种动态页面的测试装置,包括:
请求模块,用于拦截浏览器的网页访问请求,并根据所述网页访问请求从内容服务器中获取原始页面;
测试模块,用于在所述原始页面中注入测试脚本的资源地址和测试参数以生成测试页面,其中所述测试脚本的资源地址用于指定待测试的代码文件,所述测试参数用于指定待测试的项目;以及
收发模块,用于向所述浏览器发送所述测试页面,拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果,并将所述规则扫描结果上传至测试服务器。
为解决上述技术问题,本发明实施例还提供以下技术方案:
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述动态页面的测试方法的步骤。
本发明实施例提供的动态页面的测试方法、测试装置及存储介质,通过在代理中存储代码文件,并通过测试脚本将所述代码文件注入到原始页面中以生成测试页面,并由浏览器执行所述测试页面以生成规则扫描结果,不仅可以支持电脑浏览器和移动终端的浏览器,具有兼容性高的优点、同时还提高了测试效率。
附图说明
下面结合附图,通过对本发明的具体实施方式详细描述,将使本发明的技术方案及其它有益效果显而易见。
图1是本发明实施例提供的动态页面的测试方法、测试装置及存储介质的应用场景示意图;
图2是本发明实施例提供的动态页面的测试方法的流程示意图;
图3是本发明实施例提供的动态页面的测试方法的另一流程示意图;
图4是本发明实施例提供的动态页面的测试方法的时序示意图;
图5是本发明实施例提供的动态页面的测试装置的模块示意图;
图6是本发明实施例提供的动态页面的测试装置的另一模块示意图;
图7是本发明实施例提供的动态页面的测试方法、测试装置及存储介质的硬件环境示意图;
图8是本发明实施例提供的代码规则的示意图;
图9是本发明实施例提供的上报链接的示意图。
具体实施方式
请参照图式,其中相同的组件符号代表相同的组件,本发明的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本发明具体实施例,其不应被视为限制本发明未在此详述的其它具体实施例。
在以下的说明中,本发明的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域技术人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域技术人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
本文所使用的术语「模块」、「单元」可看做为在该运算系统上执行的软件对象。本文所述的不同组件、模块、引擎及服务可看做为在该运算系统上的实施对象。而本文所述的装置及方法优选的以软件的方式进行实施,当然也可在硬件上进行实施,均在本发明保护范围之内。
请参阅图1,所示为本发明实施例提供的动态页面的测试方法、测试装置及存储介质的应用场景示意图。本发明实施例中的动态页面的测试,可广泛应用于各类浏览器,比如基于个人电脑(PC)、或基于移动终端设备,具有兼容性高的优点。
所述应用场景中包括:终端设备11、代理12、内容服务器13、和测试服务器14。
所述终端设备11可以是电脑、或手机等移动终端。终端设备11中安装有浏览器111。图中以手机为例进行说明。首先,浏览器111中的网址被触发后,发送网页访问请求,其中所述网页访问请求包括:被测域名和被测链接,可表达为:请求http://被测域名/被测链接.html;然后,浏览器111接收基于所述网页访问请求所发送的测试页面,对所述测试页面进行解析,并请求对应的代码文件,可表达为:请求http://被测域名/测试脚本;接收代码文件和测试参数,并执行所述代码文件以生成动态页面的规则扫描结果,可表达为:请求http://被测域名/上报信息链接.html,并通过所述代理将所述规则扫描结果上传至测试服务器。
内容服务器13,用于根据所述网页访问请求,提供对应的原始页面。
测试服务器14,用于接收所述动态页面的规则扫描结果,并根据所述规则扫描结果,生成应对策略。
代理12,是一种存在于网络中间的实体。其原理可以理解为:终端设备11向代理12发送请求,代理12对请求进行处理和连接,同时向服务器13发送请求,并将接收到的响应转发给终端设备11。也就是说,对于终端设备11来说,代理12扮演的是服务器13的角色,对于服务器13来说,代理12扮演的是终端设备11的角色。
具体而言,在本发明的实施例中,所述代理12用于拦截浏览器111的网页访问请求,并根据所述网页访问请求从内容服务器13中获取原始页面;然后在所述原始页面中注入测试脚本的资源地址和测试参数以生成测试页面,其中所述测试脚本的资源地址用于指定待测试的代码文件,所述测试参数用于指定待测试的项目;接下来向所述浏览器111发送所述测试页面,并拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果;其中当所述规则扫描结果中包括告警请求时,读取环境参数,并将所述规则扫描结果和所述环境参数发送至测试服务器14。同时,向所述浏览器111发送反馈信息,以结束对所述代码文件的测试。
本发明实施例所提供的动态页面的测试方法、测试装置及存储介质,主要执行于代理12一侧,因此,以下实施例皆从代理12端进行交互动作的说明。
请参阅图2,所示为本发明实施例提供的动态页面的测试方法的流程示意图。
所述动态页面的测试方法,包括如下步骤:
在步骤S201中,拦截浏览器的网页访问请求,并根据所述网页访问请求从内容服务器中获取原始页面。
其中,所述网页访问请求中包括:被测域名和被测链接,可表达为:请求http://被测域名/被测链接.html。
在步骤S202中,在所述原始页面中注入测试脚本的资源地址和测试参数以生成测试页面,其中所述测试脚本的资源地址用于指定待测试的代码文件,所述测试参数用于指定待测试的项目。
具体而言,本步骤分为:
(1)在原始页面中插入测试脚本的资源地址,所述测试脚本的资源地址用于指定待测试的代码文件;比如,通过如下指令:
<script data-flag=”crossorigin”src=”/is/fiddler_test.is”></script></body></html>,用以插入被测脚本,使浏览器以src为链接去下载并执行指定的代码文件。
(2)将所述插入测试脚本资源地址的页面发送至浏览器;
(3)接收所述浏览器解析后生成的对代码文件的请求,所述对代码文件的请求包括:被测域名、被测链接、和测试脚本,比如:表达为:请求http://被测域名/被测链接/测试脚本;
(4)根据所述对代码文件的请求读取对应的代码文件和测试参数以生成测试页面,其中,所述测试参数用于指定所述代码文件的测试的项目。
在步骤S203中,向所述浏览器发送所述测试页面,拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果,并将所述规则扫描结果上传至测试服务器。
其中,所述规则扫描,是在测试过程中,通过预设的代码规则,进行自动化检测软件缺陷(Bug)和安全漏洞,主要是依据所述测试参数生成。
如图8所示,为规则扫描的一示例图。其中,所述规则包括但不限于:检查CGI资源是否录入ATT平台;检查是否存在badjs上报;检查静态资源是否压缩或缓存;检查异常的http返回码;检查异常的CGI返回值;检查CGI返回数据中是否存在QQ号、手机号、或身份证号;等等,此处不一一列举。
所述规则扫描结果,可表达为:请求http://被测域名/上报信息链接.html。
如图9所示,问上报信息链接的示例图。其中,至少包括:邮件配置,用于指定收件人或收件团队、发件人、和抄送人;以及关注域名,用于指定被测域名。还可以报名:项目信息,如项目ID、立项目的等;以及系统配置信息。概而言之,用于说明bug的发现人、通知人、机型、时间点、相关页面的信息。
本发明实施例提供的动态页面的测试方法,通过在代理中存储代码文件,并通过测试脚本将所述代码文件注入到原始页面中以生成测试页面,并由浏览器执行所述测试页面以生成规则扫描结果,不仅可以支持电脑浏览器和移动终端的浏览器,具有兼容性高的优点、同时还提高了测试效率。
请参阅图3,所示是本发明实施例提供的动态页面的测试方法的另一流程示意图。
所述动态页面的测试方法,包括如下步骤:
在步骤S301中,拦截浏览器的网页访问请求。
其中,所述网页访问请求中包括:被测域名和被测链接,可表达为:请求http://被测域名/被测链接.html。
在步骤S302中,将所述网页访问请求转发至内容服务器,并接收所述内容服务器发送的原始页面。
在步骤S303中,在所述原始页面中注入测试脚本的资源地址,其中所述测试脚本的资源地址用于指定待测试的代码文件。
在步骤S304中,将所述测试脚本的资源地址发送至所述浏览器,并接收所述浏览器解析所述资源地址后对代码文件的请求。
其中,所述对代码文件的请求包括:被测域名、被测链接、和测试脚本,比如:可表达为:请求http://被测域名/被测链接/测试脚本。
在步骤S305中,读取对应的代码文件和读取测试参数,并发送至浏览器。
具体而言,本步骤包括:
(1)根据所述对代码文件的请求获取对应的代码文件;
(2)获取测试参数,所述测试参数用于指定待测试的项目。可具体执行为:根据所述代码文件,获取对应的测试选项;响应对所述测试选项的确认指令,以生成测试参数。
在步骤S306中,拦截浏览器执行所述代码文件所生成的规则扫描结果。
可以理解的是,浏览器接收到所述代码文件和测试参数后,根据所述测试测试对所述代码文件进行规则扫描,进而生成规则扫描结果。
其中,所述规则扫描,是在测试过程中,通过测试参数对代码文件进行自动化检测软件缺陷(Bug)和安全漏洞。
如图8所示,为规则扫描的一示例图。其中,所述规则包括但不限于:检查CGI资源是否录入ATT平台;检查是否存在badjs上报;检查静态资源是否压缩或缓存;检查异常的http返回码;检查异常的CGI返回值;检查CGI返回数据中是否存在QQ号、手机号、或身份证号;等等,此处不一一列举。
其中,所述规则扫描结果,可表达为:请求http://被测域名/上报信息链接.html。
如图9所示,问上报信息链接的示例图。其中,至少包括:邮件配置,用于指定收件人或收件团队、发件人、和抄送人;以及关注域名,用于指定被测域名。还可以报名:项目信息,如项目ID、立项目的等;以及系统配置信息。概而言之,用于说明bug的发现人、通知人、机型、时间点、相关页面的信息。
在步骤S307中,当所述规则扫描结果中包括告警请求时,读取环境参数。
在步骤S308中,将所述规则扫描结果和所述环境参数发送至测试服务器,并由所述测试服务器生成应对策略。
在步骤S309中,向所述浏览器发送反馈信息,以结束对所述代码文件的测试。
本发明实施例提供的动态页面的测试方法,通过在代理中存储代码文件,并通过测试脚本将所述代码文件注入到原始页面中以生成测试页面,并由浏览器执行所述测试页面以生成规则扫描结果,不仅可以支持电脑浏览器和移动终端的浏览器,具有兼容性高的优点、同时还提高了测试效率。
此外,通过代理进行代码文件的插入,可以通过在域名下指定对应的测试脚本,进而避免跨域问题、客户端白名单问题、以及http的证书问题等。
请参阅图4,所示是本发明实施例提供的动态页面的测试方法的时序示意图。
所述动态页面的测试方法,由终端设备中的浏览器和代理、内容服务器、和测试服务器共同执行。所述代理包括:传输模块、本地存储器、和代理层。以下以代理与其他服务器或终端设备的互动进行说明如下:
在步骤A中,代理拦截浏览器的网页访问请求。所述网页访问请求中表达为:请求http://被测域名/被测链接.html。
在步骤B中,代理将所述网页访问请求转发至内容服务器。
在步骤C中,代理接收所述内容服务器发送的原始页面。
在步骤D中,代理在所述原始页面中注入测试脚本的资源地址以生成测试页面,其中所述测试脚本的资源地址用于指定待测试的代码文件。
在步骤E中,代理将所述测试页面发送至所述浏览器。
在步骤F中,浏览器解析所述测试页面,并获取其中对代码文件的请求,所述对代码文件的请求包括:被测域名、被测链接、和测试脚本,可表达为请求http://被测域名/被测链接/测试脚本。
在步骤G中,代理根据所述对代码文件的请求,从本地存储器中读取对应的代码文件以及从代理层读取测试参数,其中所述测试参数用于指定待测试的项目。
在步骤H中,代理将所述代码文件和测试请求发送至浏览器。
在步骤I中,浏览器执行所述测试页面中的代码文件,并对所述代码文件中的代码规则进行规则扫描以生成规则扫描结果。所述规则扫描结果,可表达为:请求http://被测域名/上报信息链接.html。
在步骤J中,代理拦截所述浏览器发送的规则扫描结果。
在步骤K中,代理当所述规则扫描结果中包括告警请求时,读取环境参数。
在步骤L中,代理将所述规则扫描结果和所述环境参数发送至测试服务器。
在步骤M中,测试服务器根据所述规则扫描结果和所述环境参数生成应对策略。
在步骤N中,代理向所述浏览器发送反馈信息。
在步骤O中,浏览器根据反馈信息结束对所述代码文件的测试。
本发明实施例提供的动态页面的测试方法,通过在代理中存储代码文件,并通过测试脚本将所述代码文件注入到原始页面中以生成测试页面,并由浏览器执行所述测试页面以生成规则扫描结果,不仅可以支持电脑浏览器和移动终端的浏览器,具有兼容性高的优点、同时还提高了测试效率。
请参阅图5,所示为本发明实施例提供的动态页面的测试装置的模块示意图。
所述动态页面的测试装置500,包括:请求模块51、测试模块52、和收发模块53。
具体而言,所述请求模块51用于拦截浏览器的网页访问请求,并根据所述网页访问请求从内容服务器中获取原始页面。
其中,所述网页访问请求中包括:被测域名和被测链接,可表达为:请求http://被测域名/被测链接.html。
测试模块52连接于请求模块51,用于在所述原始页面中注入测试脚本的资源地址和测试参数以生成测试页面,其中所述测试脚本的资源地址用于指定待测试的代码文件,所述测试参数用于指定待测试的项目。
其中,所述测试模块52包括:本地存储器521,用于存储代码文件;以及代理层522,用于生成测试参数。
具体而言,首先,所述测试模块52在原始页面中插入测试脚本的资源地址,所述测试脚本用于指定待测试的代码文件;然后,将所述插入脚本的页面发送至浏览器;接下来,接收所述浏览器对应的解析结果;最后,根据所述解析结果中对代码文件的请求从本地存储器521中读取对应的代码文件、和从代理层522读取对应的测试参数以生成测试页面。
收发模块53连接于测试模块52,用于向所述浏览器发送所述测试页面,拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果,并将所述规则扫描结果上传至测试服务器。
其中,所述规则扫描,是在测试过程中,通过测试参数对代码文件进行自动化检测软件缺陷(Bug)和安全漏洞。所述规则扫描结果,可表达为:请求http://被测域名/上报信息链接.html。
本发明实施例提供的动态页面的测试装置,通过在代理中存储代码文件,并通过测试脚本将所述代码文件注入到原始页面中以生成测试页面,并由浏览器执行所述测试页面以生成规则扫描结果,不仅可以支持电脑浏览器和移动终端的浏览器,具有兼容性高的优点、同时还提高了测试效率。
请参阅图6,所示是本发明实施例提供的动态页面的测试装置的另一模块示意图。
所述动态页面的测试装置600,包括:请求模块61、测试模块62、和收发模块63。
请求模块61,用于拦截浏览器的网页访问请求,并根据所述网页访问请求从内容服务器中获取原始页面。
其中,所述所述请求模块包括:网页拦截单元611、和网页传输单元612。
具体而言,所述网页拦截单元611,用于拦截浏览器的网页访问请求,所述网页访问请求包括:被测域名和被测链接。在一具体实施例中,所述网页访问请求可表达为:请求http://被测域名/被测链接.html。
所述网页传输单元612,连接于网页拦截单元611,用于将所述被测域名和被测链接发送至内容服务器,并接收所述内容服务器发送的原始页面。
测试模块62,连接于请求模块61,用于在所述原始页面中注入测试脚本的资源地址和测试参数以生成测试页面,其中所述测试脚本的资源地址用于指定待测试的代码文件,所述测试参数用于指定待测试的项目。
其中,所述测试模块62包括:脚本注入单元621、脚本传输单元622、文件读取单元623、测试参数单元624、和页面生成单元625。
具体而言,所述脚本注入单元621,用于在所述原始页面中注入测试脚本的资源地址,其中所述测试脚本的资源地址用于指定待测试的代码文件。
所述脚本传输单元622,连接于脚本注入单元621,用于将所述测试脚本的资源地址发送至所述浏览器,并接收所述浏览器解析所述测试脚本后生成的对代码文件的请求,所述对代码文件的请求包括:被测域名、被测链接、和测试脚本。在一具体实施例中,所述对代码文件的请求可表达为:请求http://被测域名/被测链接/测试脚本。
所述文件读取单元623,连接于脚本传输单元622,用于根据所述被测域名、被测链接、和测试脚本,读取对应的代码文件。
所述测试参数单元624,用于读取测试参数,所述测试参数用于指定待测试的项目。
所述页面生成单元625,连接于文件读取单元623和测试参数单元624,用于根据所述代码文件和测试参数生成测试页面。
收发模块63,连接于测试模块62,用于向所述浏览器发送所述测试页面,拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果,,并将所述规则扫描结果上传至测试服务器。
其中,所述收发模块63包括:页面发送单元631、结果拦截单元632、参数读取单元633、和整合传输单元634。
具体而言,所述页面发送单元631,用于向所述浏览器发送所述测试页面,以便所述浏览器执行所述测试页面中的代码文件,并对所述代码文件中的代码规则进行规则扫描以生成规则扫描结果。
其中,所述规则扫描,是在测试过程中,通过测试参数对代码文件进行自动化检测软件缺陷(Bug)和安全漏洞。在一具体实施例中,所述规则扫描结果,可表达为:请求http://被测域名/上报信息链接.html。
结果拦截单元632,连接于页面反馈单元631,用于拦截所述浏览器发送的规则扫描结果。
参数读取单元633,连接于结果拦截单元632,用于当所述规则扫描结果中包括告警请求时,读取环境参数。
整合传输单元634,连接于参数读取单元633,用于将所述规则扫描结果和所述环境参数发送至测试服务器,并由所述测试服务器生成应对策略。
本发明实施例提供的动态页面的测试装置,通过在代理中存储代码文件,并通过测试脚本将所述代码文件注入到原始页面中以生成测试页面,并由浏览器执行所述测试页面以生成规则扫描结果,不仅可以支持电脑浏览器和移动终端的浏览器,具有兼容性高的优点、同时还提高了测试效率。
此外,通过代理进行代码文件的插入,可以通过在域名下指定对应的测试脚本,进而避免跨域问题、客户端白名单问题、以及http的证书问题等。
相应的,本发明实施例还提供一种代理服务器,用于展示本发明实施例提供的动态页面的测试方法、测试装置及存储介质的硬件环境。需要说明的是,代理既可以理解为终端设备、也可以理解为服务器,在下图中以服务器为例,对其硬件环境进行展示。
如图7所示,所述代理服务器用于执行图2-3中的动态页面的测试方法、或运行图5-6中的动态页面的测试的测试装置。所述代理服务器700包括:一个或者一个以上处理核心的处理器701、一个或一个以上计算机可读存储介质的存储器702、输入单元703、短距离无线传输(WiFi)模块704、显示屏幕705、以及电源706等部件。
本领域技术人员可以理解,上述结构并不构成对代理服务器700的限定,可以包括比上述更多或更少的部件、组合某些部件、或不同的部件布置。其中:
具体在本实施例中,在代理服务器700中,处理器701会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器702中,并由处理器701来运行存储在存储器702中的应用程序,从而实现各种功能,如下:拦截浏览器的网页访问请求,并根据所述网页访问请求从内容服务器中获取原始页面;在所述原始页面中注入测试脚本的资源地址和测试参数以生成测试页面,其中所述测试脚本的资源地址用于指定待测试的代码文件,所述测试参数用于指定待测试的项目;向所述浏览器发送所述测试页面,拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果,并将所述规则扫描结果上传至测试服务器。
优选的,所述处理器701还可以用于:拦截浏览器的网页访问请求,所述网页访问请求包括:被测域名和被测链接;将所述被测域名和被测链接发送至内容服务器,并接收所述内容服务器发送的原始页面。
优选的,所述处理器701还可以用于:在所述原始页面中注入测试脚本的资源地址,其中所述测试脚本的资源地址用于指定待测试的代码文件;将所述测试脚本的资源地址发送至所述浏览器,并接收所述浏览器解析所述资源地址后对代码文件的请求,所述对代码文件的请求包括:被测域名、被测链接、和测试脚本;根据所述被测域名、被测链接、和测试脚本,读取对应的代码文件;读取测试参数,所述测试参数用于指定待测试的项目;根据所述代码文件和测试参数生成测试页面。
优选的,所述处理器701还可以用于:根据所述代码文件,获取对应的测试选项;响应对所述测试选项的确认指令,以生成测试参数。
优选的,所述处理器701还可以用于:向所述浏览器发送所述测试页面,以便所述浏览器执行所述测试页面中的代码文件,并对所述代码文件中的代码规则进行规则扫描以生成规则扫描结果;拦截所述浏览器发送的规则扫描结果,并将所述规则扫描结果上传至测试服务器。
优选的,所述处理器701还可以用于:当所述规则扫描结果中包括告警请求时,读取环境参数;将所述规则扫描结果和所述环境参数发送至测试服务器,并由所述测试服务器生成应对策略。
优选的,所述处理器701还可以用于:向所述浏览器发送反馈信息,以结束对所述代码文件的测试。
本发明实施例提供的所述代理服务器,与上文实施例中的动态页面的测试方法、测试装置及存储介质属于同一构思。
需要说明的是,对本发明所述动态页面的测试方法而言,本领域普通技术人员可以理解实现本发明实施例中的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,所述计算机程序可存储于一计算机可读取存储介质中,如存储在代理服务器的存储器中,并被该代理服务器内的至少一个处理器执行,在执行过程中可包括如所述信息分享方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储器(ROM,ReadOnly Memory)、随机存取记忆体(RAM,Random Access Memory)等。
对本发明实施例的所述动态页面的测试装置而言,其各功能模块可以集成在一个处理芯片中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中,所述存储介质譬如为只读存储器,磁盘或光盘等。
以上对本发明实施例所提供的动态页面的测试方法、测试装置及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (11)

1.一种动态页面的测试方法,其特征在于,包括:
拦截浏览器的网页访问请求,并根据所述网页访问请求从内容服务器中获取原始页面;
在所述原始页面中注入测试脚本的资源地址,其中所述测试脚本的资源地址用于指定待测试的代码文件;
将所述测试脚本的资源地址发送至所述浏览器,并接收所述浏览器解析所述资源地址后对代码文件的请求,所述对代码文件的请求包括:被测域名、被测链接、和测试脚本;
根据所述被测域名、被测链接、和测试脚本,读取对应的代码文件;
读取测试参数,所述测试参数用于指定待测试的项目;以及
根据所述代码文件和测试参数生成测试页面;以及
向所述浏览器发送所述测试页面以使得所述浏览器执行所述测试页面中代码文件生成动态页面的规则扫描结果,拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果,并将所述规则扫描结果上传至测试服务器。
2.如权利要求1所述的动态页面的测试方法,其特征在于,拦截浏览器的网页访问请求,并根据所述网页访问请求从内容服务器中获取原始页面,包括:
拦截浏览器的网页访问请求,所述网页访问请求包括:被测域名和被测链接;以及
将所述被测域名和被测链接发送至内容服务器,并接收所述内容服务器发送的原始页面。
3.如权利要求1所述的动态页面的测试方法,其特征在于,读取测试参数,包括:
根据所述代码文件,获取对应的测试选项;
响应对所述测试选项的确认指令,以生成测试参数。
4.如权利要求1所述的动态页面的测试方法,其特征在于,向所述浏览器发送所述测试页面以使得所述浏览器执行所述测试页面中代码文件生成动态页面的规则扫描结果,拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果,并将所述规则扫描结果上传至测试服务器,包括:
向所述浏览器发送所述测试页面,以便所述浏览器执行所述测试页面中的代码文件,并对所述代码文件中的代码规则进行规则扫描以生成规则扫描结果;
拦截所述浏览器发送的规则扫描结果,并将所述规则扫描结果上传至测试服务器。
5.如权利要求4所述的动态页面的测试方法,其特征在于,拦截所述浏览器发送的规则扫描结果,之后还包括:
当所述规则扫描结果中包括告警请求时,读取环境参数;以及
将所述规则扫描结果和所述环境参数发送至测试服务器,并由所述测试服务器生成应对策略。
6.如权利要求5所述的动态页面的测试方法,其特征在于,将所述规则扫描结果和所述环境参数发送至测试服务器,之后还包括:
向所述浏览器发送反馈信息,以结束对所述代码文件的测试。
7.一种动态页面的测试装置,其特征在于,包括:
请求模块,用于拦截浏览器的网页访问请求,并根据所述网页访问请求从内容服务器中获取原始页面;
测试模块,包括:脚本注入单元,用于在所述原始页面中注入测试脚本的资源地址,其中所述测试脚本的资源地址用于指定待测试的代码文件;
脚本传输单元,用于将所述测试脚本的资源地址发送至所述浏览器,并接收所述浏览器解析所述资源地址后对代码文件的请求,所述对代码文件的请求包括:被测域名、被测链接、和测试脚本;
文件读取单元,用于根据所述被测域名、被测链接、和测试脚本,读取对应的代码文件;
测试参数单元,用于读取测试参数,所述测试参数用于指定待测试的项目;以及
页面生成单元,用于根据所述代码文件和测试参数生成测试页面;
收发模块,用于向所述浏览器发送所述测试页面以使得所述浏览器执行所述测试页面中代码文件生成动态页面的规则扫描结果,拦截所述浏览器执行所述测试页面中代码文件所生成的动态页面的规则扫描结果,并将所述规则扫描结果上传至测试服务器。
8.如权利要求7所述的动态页面的测试装置,其特征在于,所述请求模块包括:
网页拦截单元,用于拦截浏览器的网页访问请求,所述网页访问请求包括:被测域名和被测链接;以及
网页传输单元,用于将所述被测域名和被测链接发送至内容服务器,并接收所述内容服务器发送的原始页面。
9.如权利要求7所述的动态页面的测试装置,其特征在于,所述收发模块包括:
页面发送单元,用于向所述浏览器发送所述测试页面,以便所述浏览器执行所述测试页面中的代码文件,并对所述代码文件中的代码规则进行规则扫描以生成规则扫描结果;
结果拦截单元,用于拦截所述浏览器发送的规则扫描结果;
参数读取单元,用于当所述规则扫描结果中包括告警请求时,读取环境参数;以及
整合传输单元,用于将所述规则扫描结果和所述环境参数发送至测试服务器,并由所述测试服务器生成应对策略。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至6中任一项所述动态页面的测试方法。
11.一种服务器,其特征在于,包括存储器和处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下如权利要求1至6任一项所述方法中的步骤。
CN201710423557.XA 2017-06-07 2017-06-07 动态页面的测试方法、测试装置及存储介质 Active CN107133180B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710423557.XA CN107133180B (zh) 2017-06-07 2017-06-07 动态页面的测试方法、测试装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710423557.XA CN107133180B (zh) 2017-06-07 2017-06-07 动态页面的测试方法、测试装置及存储介质

Publications (2)

Publication Number Publication Date
CN107133180A CN107133180A (zh) 2017-09-05
CN107133180B true CN107133180B (zh) 2021-03-23

Family

ID=59733783

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710423557.XA Active CN107133180B (zh) 2017-06-07 2017-06-07 动态页面的测试方法、测试装置及存储介质

Country Status (1)

Country Link
CN (1) CN107133180B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108345535B (zh) * 2017-12-26 2022-03-04 创新先进技术有限公司 mock测试方法、装置及设备
CN108322436B (zh) * 2017-12-28 2022-05-31 瑞庭网络技术(上海)有限公司 网络请求的验证方法、装置、计算机设备及可读存储介质
CN108256014B (zh) * 2018-01-05 2021-06-25 创新先进技术有限公司 页面展示方法及装置
CN110716850B (zh) * 2018-07-11 2022-05-06 腾讯科技(深圳)有限公司 页面测试方法、装置、系统及存储介质
CN109510738B (zh) * 2018-12-14 2022-02-22 平安壹钱包电子商务有限公司 一种通信链路的测试方法及设备
CN111953718A (zh) * 2019-05-15 2020-11-17 北京京东尚科信息技术有限公司 一种页面调试方法和装置
CN110808868B (zh) * 2019-09-12 2023-04-07 中国平安财产保险股份有限公司 测试数据获取方法、装置、计算机设备及存储介质
CN110633219B (zh) * 2019-09-24 2023-09-08 网易(杭州)网络有限公司 页面测试方法与装置、存储介质、电子设备
CN111045934A (zh) * 2019-11-29 2020-04-21 北京三快在线科技有限公司 页面分析方法、装置、客户端、存储介质及电子设备
CN111078517B (zh) * 2019-12-09 2023-09-01 广州品唯软件有限公司 一种页面监控方法、装置、计算机设备及存储介质
CN111124841B (zh) * 2019-12-09 2023-08-18 广州品唯软件有限公司 一种异常页面的报警方法、装置及计算机系统
CN113495838B (zh) * 2020-04-08 2024-01-09 阿里巴巴集团控股有限公司 一种页面测试方法及装置
CN112269739A (zh) * 2020-10-26 2021-01-26 广州华多网络科技有限公司 网页测试方法及其装置、设备、介质
CN112597054B (zh) * 2020-12-30 2023-04-11 深圳市世强元件网络有限公司 移动终端h5页面应用测试装置、测试方法和电脑终端
CN114791875A (zh) * 2021-01-25 2022-07-26 阿里巴巴集团控股有限公司 一种易用性测试方法、装置、电子设备和存储介质
CN114816558B (zh) * 2022-03-07 2023-06-30 深圳市九州安域科技有限公司 一种脚本注入方法、设备及计算机可读存储介质
CN116521572B (zh) * 2023-07-03 2023-09-19 天津金城银行股份有限公司 网页脚本可视化验证方法、系统、终端设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116609A (zh) * 2013-01-18 2013-05-22 北京奇虎科技有限公司 实现浏览器中页面加载的服务器、客户端、系统和方法
US8910292B1 (en) * 2007-02-01 2014-12-09 Mcafee, Inc. Method and system for detection of remote file inclusion vulnerabilities
KR20150048778A (ko) * 2012-08-29 2015-05-07 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 동적 오염을 기반으로 하는 보안 스캔
CN105808417A (zh) * 2014-12-29 2016-07-27 平安科技(深圳)有限公司 自动化测试方法及代理服务器
CN105939311A (zh) * 2015-08-11 2016-09-14 杭州迪普科技有限公司 一种网络攻击行为的确定方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8910292B1 (en) * 2007-02-01 2014-12-09 Mcafee, Inc. Method and system for detection of remote file inclusion vulnerabilities
KR20150048778A (ko) * 2012-08-29 2015-05-07 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 동적 오염을 기반으로 하는 보안 스캔
CN103116609A (zh) * 2013-01-18 2013-05-22 北京奇虎科技有限公司 实现浏览器中页面加载的服务器、客户端、系统和方法
CN105808417A (zh) * 2014-12-29 2016-07-27 平安科技(深圳)有限公司 自动化测试方法及代理服务器
CN105939311A (zh) * 2015-08-11 2016-09-14 杭州迪普科技有限公司 一种网络攻击行为的确定方法和装置

Also Published As

Publication number Publication date
CN107133180A (zh) 2017-09-05

Similar Documents

Publication Publication Date Title
CN107133180B (zh) 动态页面的测试方法、测试装置及存储介质
CN104767775B (zh) 网页应用消息推送方法及系统
CN109558320B (zh) 系统测试方法、装置、系统、设备及计算机可读存储介质
CN108255701B (zh) 场景测试方法及移动终端
CN105357323A (zh) 一种app中html5页面调试方法及装置
CN111597110B (zh) 页面测试方法、装置、电子设备及存储介质
CN101877696A (zh) 在网络应用环境下重构错误响应信息的设备和方法
CN108459850B (zh) 生成测试脚本的方法、装置及系统
CN104821954A (zh) 一种跨平台远程过程调用方法
CN102323880A (zh) 基于浏览器解析方式的手机应用界面的开发方法和终端
CN104536890A (zh) 测试系统、方法和装置
CN110365724B (zh) 任务处理方法、装置及电子设备
CN111831538A (zh) 调试方法、装置以及存储介质
CN108427639B (zh) 自动化测试方法、应用服务器及计算机可读存储介质
CN113127361A (zh) 应用程序的开发方法、装置、电子设备和存储介质
CN111666199B (zh) 在智能终端上执行的调试方法以及软件调试器
CN109857963A (zh) 本地资源访问方法、装置及电子设备
CN111694550A (zh) 一种页面显示控制方法、装置及系统
CN106686037B (zh) 页面检测方法、装置、设备及系统
CN113362173A (zh) 防重机制验证方法、验证系统、电子设备及存储介质
US20120158911A1 (en) Automatic wsdl download of client emulation for a testing tool
CN112650689A (zh) 测试方法、装置、电子设备及存储介质
CN112699034A (zh) 虚拟登录用户构建方法、装置、设备及存储介质
CN110874278A (zh) 外部系统的嵌入方法、工作流系统、设备及存储介质
CN111045934A (zh) 页面分析方法、装置、客户端、存储介质及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant