网络请求的验证方法、装置、计算机设备及可读存储介质与流程

文档序号:15022868发布日期:2018-07-25 01:30阅读:102来源:国知局

本发明涉及安全技术领域,尤其涉及一种网络请求的验证方法、装置、计算机设备及可读存储介质。



背景技术:

随着网络技术的飞速发展,网络项目迭代频繁,而现有技术中对网络项目的测试是通过人工对网络项目对应的网络请求进行测试完成的,该方法效率较低。

而目前行业中的网络项目自动化测试由只能对发出网络请求后得到的响应信息进行验证以完成对相应网络项目的测试,例如:用户界面交互UI自动化可以模拟用户操作,针对反馈的页面的内容进行验证;接口自动化可以针对发出网络请求后所得到的反馈结果进行校验。由此,UI自动化及接口自动化均无法对网络请求进行直接验证。因现有的自动化测试方案只能对发出网络请求后得到的响应信息进行验证,而无法对网络请求直接进行验证,导致网络项目的测试效率依然很低。



技术实现要素:

本发明的主要目的在于提出一种网络请求的验证方法、装置、计算机设备及可读存储介质,其克服了现有技术中因无法对网络请求直接进行验证而导致的网络项目测试效率低的问题。

根据本发明的一个方面,提供了一种网络请求的验证方法,应用于代理服务器,所述方法包括:获取目标浏览器发出的网络请求;依据预设验证规则对所述网络请求进行验证;在验证通过的情况下,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确。

可选的,所述获取目标浏览器发出的网络请求,包括:获取所述目标浏览器基于自动化框架进行预设操作时发出的网络请求;所述预设操作包括:打开页面、点击选项、滑动页面的一种或多种。

可选的,在所述获取目标浏览器发出的网络请求之后,及所述依据预设验证规则对所述网络请求进行验证之前,所述方法包括:在所述代理服务器中配置预设过滤规则;依据所述预设过滤规则对所述网络请求进行过滤,以得到待验证的网络请求。

可选的,所述预设过滤规则包括目标域名及目标参数;所述依据所述预设过滤规则对所述网络请求进行过滤,得到待验证的网络请求,包括:依据所述目标域名及目标参数与获取到的网络请求的域名及目标参数进行匹配;依据匹配结果,确定相应的网络请求为待验证的网络请求。

可选的,所述依据所述预设过滤规则对所述网络请求进行过滤,得到待验证的网络请求之后,所述依据预设验证规则对所述网络请求进行验证之前,所述方法还包括:存储所述待验证的网络请求,用于通过所述预设验证规则进行批量验证。

可选的,所述预设验证规则包括目标参数值;所述依据预设验证规则对所述网络请求进行验证,包括:确定所述待验证的网络请求的参数值是否大于所述目标参数值;若是,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确;否则,确定所述网络请求所对应的基于该目标浏览器的业务项目运行不正确。

根据本发明的第二个方面,提供了一种网络请求的验证装置,其基于代理服务器侧,所述装置包括:获取模块,用于获取目标浏览器发出的网络请求;验证模块,用于依据预设验证规则对所述网络请求进行验证;确定模块,用于在验证通过的情况下,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确。

可选的,所述获取模块具体用于:获取所述目标浏览器基于自动化框架进行预设操作时发出的网络请求;所述预设操作包括:打开页面、点击选项、滑动页面的一种或多种。

可选的,所述装置还包括:过滤规则配置模块,用于在所述获取目标浏览器发出的网络请求之后,及所述依据预设验证规则对所述网络请求进行验证之前,在所述代理服务器中配置预设过滤规则;过滤模块,用于依据所述预设过滤规则对所述网络请求进行过滤,得到待验证的网络请求。

可选的,所述预设过滤规则包括目标域名及目标参数;所述过滤模块具体用于:依据所述目标域名及目标参数与获取到的网络请求的域名及目标参数进行匹配;依据匹配结果,确定相应的网络请求为待验证的网络请求。

可选的,所述装置还包括:存储模块,用于在所述依据所述预设过滤规则对所述网络请求进行过滤,得到待验证的网络请求之后,所述依据预设验证规则对所述网络请求进行验证之前,存储所述待验证的网络请求,用于通过所述预设验证规则进行批量验证。

根据本发明的第三个方面,提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的一种网络请求的验证方法。

根据本发明的第四个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的一种网络请求的验证方法。

本发明有益效果如下:本发明实施例所提供的一种网络请求的验证方法、装置、计算机设备及可读存储介质,通过代理服务器直接对目标浏览器发出的网络请求进行拦截,然后通过验证规则对网络请求进行验证而非对该网络请求的响应信息进行验证,即可实现对该网络请求所对应的基于目标浏览器的业务项目进行验证,就此,也可对基于目标浏览器的网络项目是否正确进行测试。从而,可有效的提高对网络项目的测试效率。而且,在本实施例中,代理服务器自动获取网络请求,并且由代理服务器对网络请求进行验证,所以该验证过程均为自动,所以,也可有效的提高对网络项目的测试效率。

附图说明

图1为本发明第一实施例一种网络请求的验证方法的流程框图;

图2为本发明第二实施例一种网络请求的验证方法的流程框图;

图3为本发明第三实施例一种网络请求的验证方法的流程框图;

图4为本发明第四实施例一种网络请求的验证方法的流程框图;

图5为本发明第五实施例一种网络请求的验证装置的流程框图。

本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。

为了便于理解本发明实施例,下面通过几个具体实施例对本发明的实施过程进行详细的阐述。

本发明第一实施例提供了一种网络请求的验证方法,其应用于代理服务器侧,该方法包括:获取目标浏览器发出的网络请求;依据预设验证规则对所述网络请求进行验证,所述预设验证规则包括验证域名、验证业务参数及所述验证业务参数对应的验证参数值中的一种或多种;在验证通过的情况下,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确。

在本实施例中,通过代理服务器对目标浏览器发出的网络请求进行拦截,然后通过验证规则直接对网络请求进行验证而非对该网络请求的响应信息进行验证,即可实现对该网络请求所对应的基于目标浏览器的业务项目进行验证,就此,也可对基于目标浏览器的网络项目是否正确进行测试,从而,可有效的提高对网络项目的测试效率。而且,在本实施例中,代理服务器自动获取网络请求,并且由代理服务器对网络请求进行验证,所以该验证过程均为自动,所以,也可有效的提高对网络项目的测试效率。

值得注意的是,在现有技术中,在目标网页的收费之前需要通过对目标网页的网络请求的响应信息进行验证从而确定出响应信息对应的收费项。而在本实施例中,可以直接对该网络请求进行验证,并借此可以确定网络请求中的收费项,可大大提高对收费项的确认效率。

具体的,图1为本发明第一实施例一种网络请求的验证方法的流程框图,根据图1所示,本发明第一实施例提供了一种网络请求的验证方法,其应用于代理服务器侧,该方法包括:

S1:获取目标浏览器发出的网络请求;

在本实施例中,需要先启动代理服务器localhost,并在该代理服务器上开放获取端口。用户在操作目标浏览器时,代理服务器会对目标浏览器发出的网络请求进行拦截,拦截的网络请求经该端口进入代理服务器,借此,代理服务器得到网络请求。其中,代理服务器的开启及通过代理服务器对网络请求实现拦截均属于现有技术,在本实施例中并不做赘述。

具体的,针对获取的目标浏览器发出的网络请求,可选的,获取所述目标浏览器基于自动化框架进行预设操作时发出的网络请求;所述预设操作包括:打开页面、点击选项、滑动页面的一种或多种。

具体的,其需对目标浏览器进行操作才能使得目标浏览器发出网络请求。在本实施例中,可以是实际操作目标浏览器发出网络请求,也可以是通过UI自动化模拟对目标浏览器进行预设操作以发出网络请求,即通过自动化框架驱动目标浏览器进行预设操作。其中,自动化框架可以为开源自动化框架selenium。

在目标浏览器发出网络请求后,由代理服务器实现对该网络请求进行拦截。通过UI自动化对目标浏览器进行模拟操作而向代理服务器发出网络请求。

S2:依据预设验证规则对所述网络请求进行验证;

代理服务器在得到网络请求后,需要依据验证规则对这些网络请求进行验证。在本实施例中,该验证规则提前配置于该代理服务器中,并不对验证规则的种类进行限定,根据不同的验证规则可以对不同的网络请求及同一网络请求的不同内容进行验证,而且,在代理服务器中还可以删除已配置的验证规则。

可选的,在本实施例中,验证规则包括验证域名、验证业务参数及其对应的验证参数值中的一种或多种。如:依据预设验证规则中的验证参数值对网络请求进行验证,即:通过比较网络请求的参数值与验证参数值的大小关系来实现对该网络请求进行验证。

S3:在验证通过的情况下,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确。

代理服务器在对网络请求进行验证后,得到验证结果。若该验证结果表征为对该网络请求的验证通过,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确,即确定基于该目标浏览器的网络项目运行正确。

在本实施例中,并不对验证结果与网络请求所对应的基于该目标浏览器的业务项目之间的关系进行限定,只需根据需要可以根据验证结果是否通过可以对网络请求所对应的基于该目标浏览器的业务项目运行是否正确进行验证即可。

值得注意的是,在本实施例中,还可以获取目标浏览器依据当前页面操作产生的网络请求。如:目标网页上设有广告,在目标页面滑动至该广告曝光时,代理服务器就会收到目标浏览器上的广告项目产生的网络请求,从而得出该广告的曝光量,以便于收费。

在本实施例中,通过代理服务器对目标浏览器发出的网络请求进行拦截,然后通过验证规则对网络请求进行验证而非对该网络请求的响应信息进行验证,即可实现对该网络请求所对应的基于目标浏览器的业务项目进行验证,就此,也可对基于目标浏览器的网络项目是否正确进行测试。而且,在本实施例中,代理服务器自动获取网络请求,并且由代理服务器对网络请求进行验证,所以该验证过程均为自动,所以,也可有效的提高对网络项目的测试效率。

值得注意的是,在现有技术中,在目标网页的收费之前需要通过对目标网页的网络请求的响应信息进行验证从而确定出响应信息对应的收费项。而在本实施例中,可以直接对该网络请求进行验证,并借此可以确定网络请求中的收费项,可大大提高对收费项的确认效率。

图2为本发明第二实施例一种网络请求的验证方法的流程框图,根据图2所示,本发明第二实施例提供了一种网络请求的验证方法,其应用于代理服务器侧,该方法包括:

S1:获取目标浏览器发出的网络请求;

S2:依据预设验证规则对所述网络请求进行验证;

S3:在验证通过的情况下,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确。

在步骤S1之后及步骤S2之前,本实施例的验证方法还包括:

S11:在所述代理服务器中配置预设过滤规则;

S12:依据所述预设过滤规则对所述网络请求进行过滤,以得到待验证的网络请求。

值得注意的是:该步骤S11也可于步骤S1之前完成。

具体的,步骤S11具体为在代理服务器中配置预设过滤规则,针对该预设过滤规则,其为一种过滤文件,具体的,该过滤文件为代理自动配置PAC文件,借助该PAC对代理服务器获取到的网络请求进行过滤,从而得到待验证的网络请求。

其中,每个PAC文件均包含一个JavaScript形式的函数。该函数返回一个包含有一个或多个访问规则的字符串。用户代理根据这些规则适用一个特定的代理其或者直接访问。当一个代理服务器无法响应的时候,多个访问规则提供了其他的后备访问方法。浏览器在访问其他页面以前,首先访问这个PAC文件。PAC文件中的URL可能是手工配置的,也可能是是通过网页的网络代理自发现协议Web Proxy Autodiscovery Protocol自动配置的。

可选的,所述预设过滤规则包括目标域名及目标参数;在此前提下,步骤S12的另一种实现方式为:

依据所述目标域名及目标参数与获取到的网络请求的域名及目标参数进行匹配;依据匹配结果,确定相应的网络请求即为待验证的网络请求。

具体的,在本实施例中,该预设过滤规则包括目标域名及目标参数,即PAC文件中存储有目标域名及目标参数。然后,代理服务器对获取到的网络请求进行解析,得到该网络请求的域名及参数。再依据目标域名及目标参数与获取到的网络请求中的域名及参数进行匹配。在本实施例中,并不对匹配结果进行限定,如:在一些场景中,获取到的网络请求中的域名与目标域名相同,而参数与目标参数不相同,则得到该网络请求,且该网络请求即为待验证的网络请求。

可选的,在本实施例中,待验证的网络请求的域名及参数需要分别与目标域名及目标参数相同。

即:在获得网络请求后,需要对该网络请求进行过滤,经过滤后得到待验证的网络请求即为依据所述预设验证规则进行验证的对象。通过本发明实施例,可以对获取到的网络请求进行筛选,以得到满足需求的网络请求。

图3为本发明第三实施例一种网络请求的验证方法的流程框图,根据图3所示,本发明第三实施例提供了一种网络请求的验证方法,其应用于代理服务器侧,该方法包括:

S1:获取目标浏览器发出的网络请求;

S2:依据预设验证规则对所述网络请求进行验证;

S3:在验证通过的情况下,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确。

在步骤S1之后及步骤S2之前,本实施例的验证方法还包括:

S11:在所述代理服务器中配置预设过滤规则;

S12:依据所述预设过滤规则对所述网络请求进行过滤,以得到待验证的网络请求。

值得注意的是:该步骤S11也可于步骤S1之前完成。

具体的,步骤S11具体为在代理服务器中配置预设过滤规则,针对该预设过滤规则,其为PAC文件,用于对网络请求进行过滤,借助该PAC对代理服务器获取到的网络请求进行过滤,从而得到待验证的网络请求。

可选的,所述预设过滤规则包括目标域名及目标参数;在此前提下,步骤S12的另一种实现方式为:

依据所述目标域名及目标参数与获取到的网络请求的域名及目标参数进行匹配;依据匹配结果,确定相应的网络请求为待验证的网络请求。

可选的,在步骤12与步骤2之间,该网络请求的验证方法还包括:

S13:存储所述待验证的网络请求,用于通过所述预设验证规则进行批量验证。

具体的,在过滤完成之后,需要存储待验证的网络请求,借此可以得到一个或多个待验证的网络请求。就此,就可以批量的对待验证的网络请求进行验证,从而,也就可以批量的对待验证的网络请求对应的基于目标浏览器的业务项目进行验证,即可以批量的对待验证的网络请求对应的基于目标浏览器的网络项目进行验证,就此,可有效的提高验证效率。

图4为本发明第四实施例一种网络请求的验证方法的流程框图,根据图4所示,本发明第四实施例提供了一种网络请求的验证方法,其应用于代理服务器侧,该方法包括:

S1:获取目标浏览器发出的网络请求;

S2:依据预设验证规则对所述网络请求进行验证;

S3:在验证通过的情况下,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确。

在步骤S1之后及步骤S2之前,本实施例的验证方法还包括:

S11:在所述代理服务器中配置预设过滤规则;

S12:依据所述预设过滤规则对所述网络请求进行过滤,以得到待验证的网络请求。

值得注意的是:该步骤S11也可于步骤S1之前完成。

具体的,步骤S11具体为在代理服务器中配置预设过滤规则,针对该预设过滤规则,其为PAC文件,用于对网络请求进行过滤,借助该PAC对代理服务器获取到的网络请求进行过滤,从而得到待验证的网络请求。

可选的,所述预设过滤规则包括目标域名及目标参数;在此前提下,步骤S12的另一种实现方式为:

依据所述目标域名及目标参数与获取到的网络请求的域名及目标参数进行匹配;依据匹配结果,确定相应的网络请求为待验证的网络请求。

可选的,存储所述待验证的网络请求,用于通过所述预设验证规则进行批量验证。

可选的,所述预设验证规则包括目标参数值;在此前提下,步骤S2的一种实现方式为:

所述依据预设验证规则对所述网络请求进行验证,包括:

确定所述待验证的网络请求的参数值是否大于所述目标参数值;

若是,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确;否则,确定所述网络请求所对应的基于该目标浏览器的业务项目运行不正确。

在本实施例中,通过代理服务器对目标浏览器发出的网络请求进行拦截,然后通过验证规则对网络请求进行验证而非对该网络请求的响应信息进行验证,即可实现对该网络请求所对应的基于目标浏览器的业务项目进行验证,就此,也可对基于目标浏览器的网络项目是否正确进行测试。而且,在本实施例中,代理服务器自动获取网络请求,并且由代理服务器对网络请求进行验证,所以该验证过程均为自动,所以,也可有效的提高对网络项目的测试效率。

值得注意的是,在现有技术中,在目标网页的收费之前需要通过对目标网页的网络请求的响应信息进行验证从而确定出响应信息对应的收费项。而在本实施例中,可以直接对该网络请求进行验证,并借此可以确定网络请求中的收费项,可大大提高对收费项的确认效率。

图5为本发明第五实施例一种网络请求的验证装置的流程框图,根据图5所示,本发明第五实施例提供了一种网络请求的验证装置,其基于代理服务器侧,所述装置包括:获取模块10,用于获取目标浏览器发出的网络请求;验证模块11,用于依据预设验证规则对所述网络请求进行验证;确定模块12,用于在验证通过的情况下,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确。

可选的,所述获取模块10具体用于:获取所述目标浏览器基于自动化框架进行预设操作时发出的网络请求;所述预设操作包括:打开页面、点击选项、滑动页面的一种或多种。

可选的,所述装置还包括:过滤规则配置模块,用于在所述获取目标浏览器发出的网络请求之后,及所述依据预设验证规则对所述网络请求进行验证之前,在所述代理服务器中配置预设过滤规则;过滤模块,用于依据所述预设过滤规则对所述网络请求进行过滤,以得到待验证的网络请求。

可选的,所述预设过滤规则包括目标域名及目标参数;所述过滤模块具体用于:依据所述目标域名及目标参数与获取到的网络请求的域名及目标参数进行匹配;依据匹配结果,确定相应的网络请求为待验证的网络请求。

可选的,所述装置还包括:存储模块,用于在所述依据所述预设过滤规则对所述网络请求进行过滤,得到待验证的网络请求之后,所述依据预设验证规则对所述网络请求进行验证之前,存储所述待验证的网络请求,用于通过所述预设验证规则进行批量验证。

可选的,所述预设验证规则包括目标参数值;所述验证模块11具体用于:确定所述待验证的网络请求的参数值是否大于所述目标参数值;若是,确定所述网络请求所对应的基于该目标浏览器的业务项目运行正确;否则,确定所述网络请求所对应的基于该目标浏览器的业务项目运行不正确。

本发明第六实施例提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的一种网络请求的验证方法。

由于在第一至四实施例中已经对一种网络请求的验证方法进行了详细说明,所以在本实施例中不对该方法的实施过程进行重复阐述。

本发明第七实施例提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的一种网络请求的验证方法。

由于在第一至四实施例中已经对一种网络请求的验证方法进行了详细说明,所以在本实施例中不对该方法的实施过程进行重复阐述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1