CN104009880B - Web测试方法、代理服务器和Web测试装置 - Google Patents
Web测试方法、代理服务器和Web测试装置 Download PDFInfo
- Publication number
- CN104009880B CN104009880B CN201310062267.9A CN201310062267A CN104009880B CN 104009880 B CN104009880 B CN 104009880B CN 201310062267 A CN201310062267 A CN 201310062267A CN 104009880 B CN104009880 B CN 104009880B
- Authority
- CN
- China
- Prior art keywords
- proxy server
- web
- test
- web test
- hosts files
- 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
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
本申请公开了一种Web测试方法、代理服务器和Web测试装置,其中,该Web测试方法包括:代理服务器接收到Web测试装置发送的Web测试请求;该代理服务器获取与该Web测试请求中的会话标识对应的hosts文件;该代理服务器根据hosts文件中的映射关系将该Web测试请求中的域名转换成目的IP地址;该代理服务器向该目的IP地址所指示的网络设备请求测试数据;该代理服务器将请求到的该测试数据发送给该Web测试装置。本申请解决了现有技术中由于在一台测试执行机上一次只能跑一个测试任务导致的硬件资源被极大地浪费的问题,达到了提高硬件资源利用率的效果。
Description
技术领域
本申请涉及互联网领域,具体而言,涉及一种Web测试方法、代理服务器和Web测试装置。
背景技术
Web自动化测试是把以人为驱动的Web功能测试行为转化为机器自动执行的一种过程。在Web自动化测试方案出现之前,全部依靠人为的鼠标点击或键盘操作来完成对业务逻辑的功能测试,费时费力,浪费大量资源,且测试的正确性也不高。有了Web自动化测试后,原先人为操作的,全部由测试执行机自动执行,节省了大量的人力物力。并且可以实现项目维度的持续集成,可以对开发过程进行持续的跟进质量问题,把各种缺陷和问题拦截在开发阶段中。
在Web自动化测试的过程中,需要使用到操作***中的hosts文件。hosts文件记录了网址域名与IP地址之间的映射关系,当用户在浏览器中输入一个需要登录的网址时,***通过hosts文件中记录的映射关系将用户输入的网址域名(例如,www.***.com)解析为对应的IP地址,从而访问该IP地址所指向的服务器。在实际应用中,hosts文件记录的IP地址为英特网上实际分配的IP地址,这不能适用于Web自动化测试的开发过程。因此,通常需要将hosts文件中的IP地址修改为公司内网IP地址,使得通过修改后的hosts文件中的IP地址能够访问到内网中的网络设备,从而达到对开发环境测试的目的。
如果Web自动化测试要实现项目级别的测试,必需要修改操作***中的hosts文件,以便访问到正确的IP地址。由于不同的测试任务所测试的Web功能不同,其对应的IP地址也不同,因此,对于不同的测试任务,需要使用不同的hosts文件,才能访问到正确的IP地址。然而一台测试执行机上的hosts是全局生效的,即,一个测试任务修改了hosts文件,则这个修改后的hosts文件对并发运行的其他测试任务也是生效的,这样,其他测试任务无法使用该修改后的hosts文件进行正确的域名解析以得到正确的IP地址,从而无法访问到所需要访问的IP地址,无法获得正确的Web测试数据。
因此,根据现有的技术方案,在一台测试执行机上一次只能跑一个测试任务,而无法实现测试任务并发运行,这就导致硬件资源会被极大地浪费,没办法把测试执行机的执行能力完全的释放出来。具体而言,硬件资源浪费主要可以分为以下几种情况:
1)一台测试执行机在运行测试任务的过程中,很多测试任务仅占用很少的CPU资源,使得该测试执行机的CPU处于资源消耗很低的工作状态;
2)为了应对大量并发的测试需求,都会准备大量的测试执行机,然而,很多测试执行机在大部分时间都处在空闲状态,无法得到有效地利用。
发明内容
本申请的主要目的在于提供一种Web测试方法、代理服务器和Web测试装置,以至少解决的问题。
根据本申请的一个方面,提供了一种Web测试方法,其包括:代理服务器接收到Web测试装置发送的Web测试请求;该代理服务器获取与该Web测试请求中的会话标识对应的hosts文件;该代理服务器根据hosts文件中的映射关系将该Web测试请求中的域名转换成目的IP地址;该代理服务器向该目的IP地址所指示的网络设备请求测试数据;该代理服务器将请求到的该测试数据发送给该Web测试装置。
优选的,在代理服务器接收到Web测试装置发送的Web测试请求之前,Web测试方法还包括:该代理服务器接收到该Web测试装置发送的该hosts文件;该代理服务器生成与该hosts文件一一对应的该会话标识;该代理服务器将该会话标识发送给该Web测试装置。
优选的,在代理服务器接收到Web测试装置发送的Web测试请求之前,Web测试方法还包括:该Web测试装置将该会话标识写入到与该hosts文件对应的会话的cookie中。
优选的,该代理服务器获取与该Web测试请求中的会话标识对应的hosts文件包括:该代理服务器从该Web测试请求携带的cookie中获取该会话标识;该代理服务器获取与该会话标识对应的hosts文件。
优选的,不同的该会话标识对应不同的会话,不同的该会话标识对应不同的该hosts文件。
根据本申请的另一方面,提供了一种代理服务器,其包括:第一接收单元,用于接收到Web测试装置发送的Web测试请求;获取单元,用于获取与该Web测试请求中的会话标识对应的hosts文件;转换单元,用于根据hosts文件中的映射关系将该Web测试请求中的域名转换成目的IP地址;访问单元,用于向该目的IP地址所指示的网络设备请求测试数据;第一发送单元,用于将请求到的该测试数据发送给该Web测试装置。
优选的,代理服务器还包括:第二接收单元,用于在该第一接收单元接收到Web测试装置发送的Web测试请求之前,接收到该Web测试装置发送的该hosts文件;生成单元,用于生成与该hosts文件一一对应的该会话标识;第二发送单元,用于将该会话标识发送给该Web测试装置。
优选的,该获取单元包括:第一获取模块,用于从该Web测试请求携带的cookie中获取该会话标识;第二获取模块,用于获取与该会话标识对应的hosts文件。
根据本申请的又一方面,提供了一种Web测试装置,其包括:第一发送单元,用于向代理服务器发送Web测试请求,其中,该Web测试请求中携带有会话标识;第一接收单元,用于接收该代理服务器发送的、根据该会话标识对应的hosts文件向网络设备请求到的测试数据。
优选的,Web测试装置还包括:第二发送单元,用于在该第一发送单元向该代理服务器发送该Web测试请求,之前,向该代理服务器发送该hosts文件;第二接收单元,用于接收该代理服务器生成的、与该hosts文件一一对应的该会话标识;写入单元,用于将该会话标识写入到与该hosts文件对应的会话的cookie中。
通过本申请的技术方案,能够达到以下有益效果:通过代理服务器为每个用于Web测试的会话提供对应的hosts文件,而不使用测试执行机上全局生效的hosts文件,这样在一台测试执行机上能够执行大量的并发测试任务,这些并发的测试任务可以通过代理服务器获得对应的hosts文件,执行正确的域名解析,以获得正确的测试数据,从而解决了现有技术中由于在一台测试执行机上一次只能跑一个测试任务导致的硬件资源被极大地浪费的问题,达到了提高硬件资源利用率的效果。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的Web测试***的一种优选示意图;
图2是根据本申请实施例的Web测试***的另一种优选示意图;
图3是根据本申请实施例的Web测试***的又一种优选示意图;
图4是根据本申请实施例的Web测试***的又一种优选示意图;
图5是根据本申请实施例的Web测试***的又一种优选示意图;以及
图6是根据本申请实施例的Web测试方法的一种优选流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在以下描述中,除非另外指明,否则将参考由一个或多个计算机执行的动作和操作的符号表示来描述本申请的各实施例。由此,可以理解,有时被称为计算机执行的这类动作和操作包括计算机的处理单元对以结构化形式表示数据的电信号的操纵。这一操纵转换了数据或在计算机的存储器***中的位置上维护它,这以本领域的技术人员都理解的方式重配置或改变了计算机的操作。维护数据的数据结构是具有数据的格式所定义的特定属性的存储器的物理位置。然而,尽管在上述上下文中描述本申请,但它并不意味着限制性的,如本领域的技术人员所理解的,后文所描述的动作和操作的各方面也可用硬件来实现。
如本申请所使用的,术语“模块”或“单元”可以指在执行相应功能的硬件或者在硬件上执行的软件对象或例程。
转向附图,其中相同的参考标号指代相同的元素,本申请的原理被示为在一个合适的计算环境中实现。以下描述基于所述的本申请的实施例,并且不应认为是关于此处未明确描述的替换实施例而限制本申请。
本申请的原理可以使用其它通用或专用计算或通信环境或配置来操作。适用于本申请的众所周知的计算***、环境和配置的示例包括但不限于,个人计算机、服务器,多处理器***、基于微处理的***、小型机、大型计算机、以及包括任意一个上述***或设备的分布式计算环境。
实施例1
如图1所示,本实施例中的Web测试***包括:Web测试装置102,与Web测试装置102通信的代理服务器104,以及与代理服务器104通信的多个网络设备106-1,106-2,…,106-N。本实施例中对网络设备的个数不作限定,可以根据实际网络架构需求来设置网络设备的个数。
在本实施例中,假设Web测试装置102当前待运行的测试任务分别为T1,T2和T3,其中,测试任务T1需要使用hosts文件1来访问网络设备106-1,测试任务T2需要使用hosts文件2来访问网络设备106-2,测试任务T3需要使用hosts文件3来访问网络设备106-N。当然,上述3个测试任务的并发运行仅是本申请的一个示例,本申请并不仅限于此,以下描述本的实施例中的方案还可以运用于多个测试任务(例如,100个测试任务,或者,1000个测试任务)并发运行的场景。
Web测试装置102通过访问代理服务器104提供的配置接口将当前待运行的测试任务T1、T2和T3所需要的hosts文件1、hosts文件2和hosts文件3发送给代理服务器104。代理服务器104存储hosts文件1、hosts文件2和hosts文件3,并分别为hosts文件1生成会话标识sessionId1,为hosts文件2生成会话标识sessionId2,为hosts文件3生成会话标识sessionId3。这里,上述会话标识与上述hosts文件一一对应,即,不同的会话标识对应不同的hosts文件。
代理服务器104将生成的会话标识sessionId1、sessionId2和sessionId3发送给Web测试装置102。Web测试装置102分别为当前待运行的测试任务T1建立一个或多个域名会话,为当前待运行的测试任务T2建立一个或多个域名会话,为当前待运行的测试任务T3建立一个或多个域名会话。Web测试装置102将sessionId1写入到为当前待运行的测试任务T1建立的一个或多个域名会话的cookie1中,将sessionId2写入到为当前待运行的测试任务T2建立的一个或多个域名会话的cookie2中,并将sessionId3写入到为当前待运行的测试任务T3建立的一个或多个域名会话的cookie3中。
这里,cookie1、cookie2和cookie3是由代理服务器104或网络设备106-1,106-2,…,106-N预先生成、并发送给Web测试装置102的。cookie1、cookie2和cookie3用于分别记录对应的域名会话中的相关参数,例如,注册所使用的用户名和密码,以便使得网络设备106-1,106-2,…,106-N能够更快地对含有cookie1、cookie2或cookie3的Web测试请求进行响应。例如,cookie1记录了访问网络设备106-1所需要的用户名和密码,这样,当代理服务器104接收到包括cookie1的Web测试请求时,将cookie1发送给对应的网络设备106-1,网络设备106-1可以根据cookie1中记录的用户名和密码进行校验操作,在校验通过后直接将登陆后的页面信息作为测试信息返回给Web测试装置102,而不需要再次显示登陆页面,以要求用户再次输入用户名和密码,从而进一步减少了Web测试所需的时间。
在执行测试任务T1的过程中,Web测试装置102通过其上的浏览器向代理服务器104发起一个Web测试请求,其中,该Web测试请求携带有用于访问网络设备106-1的域名“www.网络设备106-1.com”和cookie1,其中,cookies1中包括会话标识sessionId1。代理服务器104在接收到上述Web测试请求之后,从cookie1中获取会话标识sessionId1,并获取与sessionId1对应的hosts文件1。然后,代理服务器104根据hosts文件1中的域名和IP地址之间的映射关系将域名www.网络设备106-1.com转换为网络设备106-1的IP地址10.10.10.1。然后,代理服务器104通过IP地址10.10.10.1访问网络设备106-1,对网络设备106-1进行测试得到测试数据,并将得到的测试数据返回给Web测试装置102。
需要说明的是,本申请中的各个实施例中描述的Web测试装置102通过浏览器向代理服务器104发起Web测试请求,这只是一种示例,本申请中的Web测试装置102还可以采用其他的传输方式向代理服务器104发起Web测试请求。
进一步,执行测试任务T2和T3的过程与上述执行测试任务T1的过程相似,在此不再赘述。
在上述实施例中,通过代理服务器为每个用于Web测试的会话提供对应的hosts文件,而不使用测试执行机上全局生效的hosts文件,这样在一台测试执行机上能够执行大量的并发测试任务,这些并发的测试任务可以通过代理服务器获得对应的hosts文件,执行正确的域名解析,以获得正确的测试数据,从而解决了现有技术中由于在一台测试执行机上一次只能跑一个测试任务导致的硬件资源被极大地浪费的问题,达到了提高硬件资源利用率的效果。优选的,根据上述实施例中的方案,可以把硬件资源减少到20%左右,即可以节省80%的服务器硬件资源。例如原先需要10台测试执行机的,使用上述实施例中的方案后,只需2台测试执行机即可满足正常的Web自动化测试需求,可以节省大量硬件成本。
在图1以及上述描述的基础上,下面将结合附图来进一步描述代理服务器104和Web测试装置102。
如图2所示,代理服务器104包括但不限于:
1)第一接收单元202,用于接收到Web测试装置发送的Web测试请求;
以执行上述测试任务T1为例,Web测试装置102通过浏览器向代理服务器104的第一接收单元202发起一个Web测试请求,其中,该Web测试请求携带有用于访问网络设备106-1的域名“www.网络设备106-1.com”和cookie1。
2)获取单元204,与第一接收单元202连接,用于获取与所述Web测试请求中的会话标识对应的hosts文件;
优选的,获取单元204包括:第一获取模块,用于从所述Web测试请求携带的cookie1中获取会话标识sessionId1;第二获取模块,用于获取与会话标识sessionId1对应的hosts文件1。
3)转换单元206,与获取单元204连接,用于根据hosts文件中的映射关系将所述Web测试请求中的域名转换成目的IP地址;
优选的,转换单元206根据hosts文件1中的域名和IP地址之间的映射关系将域名“www.网络设备106-1.com”转换为网络设备106-1的IP地址10.10.10.1。
4)访问单元208,与转换单元206连接,用于向所述目的IP地址所指示的网络设备请求测试数据;
优选的,访问单元208通过IP地址10.10.10.1访问网络设备106-1,对网络设备106-1进行测试得到测试数据。在本实施例中,,对网络设备106-1进行测试得到测试数据的步骤可以包括但不限于:测试网络设备106-1中所存储的网页的业务逻辑功能。当然,本申请对此不做限定,还可以采用现有的技术或方案来进行测试。
5)第一发送单元210,与访问单元208连接,用于将请求到的所述测试数据发送给所述Web测试装置。
优选的,第一发送单元210将得到的测试数据返回给Web测试装置102。
在上述实施例中,第一接收单元202与第一发送单元210可以由同一个硬件设备来实现,或,由不同的硬件设备实现,本申请对此不做限定。
相应的,如图4所示,Web测试装置102包括但不限于:
1)第一发送单元402,用于向代理服务器104发送Web测试请求,其中,所述Web测试请求中携带有会话标识;
以执行上述测试任务T1为例,第一发送单元402通过Web测试装置102上的浏览器向代理服务器104的第一接收单元202发起一个Web测试请求,其中,该Web测试请求携带有用于访问网络设备106-1的域名“www.网络设备106-1.com”和cookie1,该cookie1中携带有会话标识sessionId1。
2)第一接收单元404,用于接收所述代理服务器104发送的、根据所述会话标识对应的hosts文件向网络设备请求到的测试数据。
优选的,代理服务器104中的获取单元204从cookie1中获取会话标识sessionId1,并获取与sessionId1对应的hosts文件1;然后,代理服务器104中的转换单元206根据hosts文件1中的域名和IP地址之间的映射关系将域名“www.网络设备106-1.com”转换为网络设备106-1的IP地址10.10.10.1;然后,代理服务器104中的访问单元208通过IP地址10.10.10.1访问网络设备106-1,对网络设备106-1进行测试得到测试数据;然后,代理服务器104中的第一发送单元210将得到的测试数据返回给Web测试装置102中的第一接收单元404。
在上述实施例中,Web测试装置102中的第一发送单元402与第一接收单元404可以由同一个硬件设备来实现,或,由不同的硬件设备实现,本申请对此不做限定。
此外,为了将Web测试装置102为不同的测试任务设置的hosts文件发送给代理服务器104,本申请的一个优选实施例在图2和图4的基础上分别在代理服务器104和Web测试装置102上增加相应的传输接口。具体而言,如图3所示,除了包括图2所示的代理服务器中的各个单元之外,本实施例中的代理服务器104进一步包括:
6)第二接收单元302,用于在第一接收单元202接收到Web测试装置102发送的Web测试请求之前,接收到所述Web测试装置102发送的所述hosts文件;
优选的,Web测试装置102通过访问代理服务器104提供的配置接口将当前待运行的测试任务T1、T2和T3所需要的hosts文件1、hosts文件2和hosts文件3发送给代理服务器104中的第二接收单元302。
7)生成单元304,与第二接收单元302和获取单元204连接,用于生成与所述hosts文件一一对应的所述会话标识;
优选的,代理服务器104中的生成单元304分别为hosts文件1生成会话标识sessionId1,为hosts文件2生成会话标识sessionId2,为hosts文件3生成会话标识sessionId3。这里,上述会话标识与上述hosts文件一一对应,即,不同的会话标识对应不同的hosts文件。
8)第二发送单元306,与生成单元304连接,用于将所述会话标识发送给所述Web测试装置102。
优选的,代理服务器104中的第二发送单元306将生成的会话标识sessionId1、sessionId2和sessionId3发送给Web测试装置102。
在上述实施例中,第二接收单元302与第二发送单元306可以由同一个硬件设备来实现,或,由不同的硬件设备实现,或者,还可以由同一个硬件设备来实现第一接收单元202、第一发送单元210、第二接收单元302与第二发送单元306,本申请对此不做限定。
对应的,如图5所示,除了包括图4所示的Web测试装置中的各个单元之外,本实施例中的Web测试装置102进一步包括:
3)第二发送单元502,用于向所述代理服务器发送所述hosts文件;
优选的,假设Web测试装置102当前待运行的测试任务分别为T1,T2和T3,其中,测试任务T1需要使用hosts文件1来访问网络设备106-1,测试任务T2需要使用hosts文件2来访问网络设备106-2,测试任务T3需要使用hosts文件3来访问网络设备106-N。当然,上述3个测试任务的并发运行仅是本申请的一个示例,本申请并不仅限于此,以下描述本的实施例中的方案还可以运用于多个测试任务(例如,100个测试任务,或者,1000个测试任务)并发运行的场景。
Web测试装置102中的第二发送单元502将当前待运行的测试任务T1、T2和T3所需要的hosts文件1、hosts文件2和hosts文件3发送给代理服务器104中的第二接收单元302。
4)第二接收单元504,用于接收所述代理服务器104生成的、与所述hosts文件一一对应的所述会话标识;
优选的,代理服务器104中的第二发送单元306将生成的会话标识sessionId1、sessionId2和sessionId3发送给Web测试装置102中的第二接收单元504。
5)写入单元506,与第二接收单元504连接,用于将所述会话标识写入到与所述hosts文件对应的会话的cookie中。
优选的,Web测试装置102分别为当前待运行的测试任务T1建立一个或多个域名会话,为当前待运行的测试任务T2建立一个或多个域名会话,为当前待运行的测试任务T3建立一个或多个域名会话。Web测试装置102中的写入单元506将sessionId1写入到为当前待运行的测试任务T1建立的一个或多个域名会话的cookie1中,将sessionId2写入到为当前待运行的测试任务T2建立的一个或多个域名会话的cookie2中,并将sessionId3写入到为当前待运行的测试任务T3建立的一个或多个域名会话的cookie3中。
这样,在写入单元506将所述会话标识写入到与所述hosts文件对应的会话的cookie中之后,第一发送单元402可以将携带有cookie的Web测试请求发送给代理服务器104。例如,第一发送单元402可以通过Web测试装置102上的浏览器向代理服务器104的第一接收单元202发起一个Web测试请求,其中,该Web测试请求携带有用于访问网络设备106-1的域名“www.网络设备106-1.com”和cookie1,该cookie1中携带有会话标识sessionId1。
在上述实施例中,第二发送单元502与第二接收单元504可以由同一个硬件设备来实现,或,由不同的硬件设备实现,或者,由同一个硬件设备来实现第一发送单元402、第一接收单元404、第二发送单元502与第二接收单元504,本申请对此不做限定。
实施例2
在图1-图5所示的计算***的基础上,本申请还提供了一种Web测试方法。如图6所示,本实施例中的Web测试方法包括但不限于:
S602,代理服务器接收到Web测试装置发送的Web测试请求;
以执行上述测试任务T1为例,Web测试装置102通过浏览器向代理服务器104发起一个Web测试请求,其中,该Web测试请求携带有用于访问网络设备106-1的域名“www.网络设备106-1.com”和cookie1。
S604,代理服务器获取与Web测试请求中的会话标识对应的hosts文件;
优选的,代理服务器104从所述Web测试请求携带的cookie1中获取会话标识sessionId1,然后,获取与会话标识sessionId1对应的hosts文件1。
S606,代理服务器根据hosts文件中的映射关系将Web测试请求中的域名转换成目的IP地址;
优选的,代理服务器104根据hosts文件1中的域名和IP地址之间的映射关系将域名“www.网络设备106-1.com”转换为网络设备106-1的IP地址10.10.10.1。
S608,代理服务器向目的IP地址所指示的网络设备请求测试数据;
优选的,代理服务器104通过IP地址10.10.10.1访问网络设备106-1,对网络设备106-1进行测试得到测试数据。
S610,代理服务器将请求到的测试数据发送给Web测试装置。
优选的,代理服务器104将得到的测试数据返回给Web测试装置102。
在上述实施例中,通过代理服务器为每个用于Web测试的会话提供对应的hosts文件,而不使用测试执行机上全局生效的hosts文件,这样在一台测试执行机上能够执行大量的并发测试任务,这些并发的测试任务可以通过代理服务器获得对应的hosts文件,执行正确的域名解析,以获得正确的测试数据,从而解决了现有技术中由于在一台测试执行机上一次只能跑一个测试任务导致的硬件资源被极大地浪费的问题,达到了提高硬件资源利用率的效果。优选的,根据上述实施例中的方案,可以把硬件资源减少到20%左右,即可以节省80%的服务器硬件资源。例如原先需要10台测试执行机的,使用上述实施例中的方案后,只需2台测试执行机即可满足正常的Web自动化测试需求,可以节省大量硬件成本。
优选的,在代理服务器接收到Web测试装置发送的Web测试请求之前,本实施例中的Web测试方法还包括:所述代理服务器接收到所述Web测试装置发送的所述hosts文件;所述代理服务器生成与所述hosts文件一一对应的所述会话标识;所述代理服务器将所述会话标识发送给所述Web测试装置。
例如,Web测试装置102当前待运行的测试任务分别为T1,T2和T3,其中,测试任务T1需要使用hosts文件1来访问网络设备106-1,测试任务T2需要使用hosts文件2来访问网络设备106-2,测试任务T3需要使用hosts文件3来访问网络设备106-N。当然,上述3个测试任务的并发运行仅是本申请的一个示例,本申请并不仅限于此,以下描述本的实施例中的方案还可以运用于多个测试任务(例如,100个测试任务,或者,1000个测试任务)并发运行的场景。
然后,Web测试装置102通过访问代理服务器104提供的配置接口将当前待运行的测试任务T1、T2和T3所需要的hosts文件1、hosts文件2和hosts文件3发送给代理服务器104。代理服务器104存储hosts文件1、hosts文件2和hosts文件3,并分别为hosts文件1生成会话标识sessionId1,为hosts文件2生成会话标识sessionId2,为hosts文件3生成会话标识sessionId3。这里,上述会话标识与上述hosts文件一一对应,即,不同的会话标识对应不同的hosts文件。
然后,代理服务器104将生成的会话标识sessionId1、sessionId2和sessionId3发送给Web测试装置102。
优选的,在代理服务器接收到Web测试装置发送的Web测试请求之前,本实施例中的Web测试方法还包括:所述Web测试装置将所述会话标识写入到与所述hosts文件对应的会话的cookie中。
例如,Web测试装置102分别为当前待运行的测试任务T1建立一个或多个域名会话,为当前待运行的测试任务T2建立一个或多个域名会话,为当前待运行的测试任务T3建立一个或多个域名会话。Web测试装置102将sessionId1写入到为当前待运行的测试任务T1建立的一个或多个域名会话的cookie1中,将sessionId2写入到为当前待运行的测试任务T2建立的一个或多个域名会话的cookie2中,并将sessionId3写入到为当前待运行的测试任务T3建立的一个或多个域名会话的cookie3中。
优选的,所述代理服务器获取与所述Web测试请求中的会话标识对应的hosts文件包括:所述代理服务器从所述Web测试请求携带的cookie中获取所述会话标识;所述代理服务器获取与所述会话标识对应的hosts文件。
以执行测试任务T1为例,Web测试装置102通过其上的浏览器向代理服务器104发起一个Web测试请求,其中,该Web测试请求携带有用于访问网络设备106-1的域名“www.网络设备106-1.com”和cookie1,其中,cookies1中包括会话标识sessionId1。代理服务器104在接收到上述Web测试请求之后,从cookie1中获取会话标识sessionId1,并获取与sessionId1对应的hosts文件1。然后,代理服务器104根据hosts文件1中的域名和IP地址之间的映射关系将域名www.网络设备106-1.com转换为网络设备106-1的IP地址10.10.10.1。然后,代理服务器104通过IP地址10.10.10.1访问网络设备106-1,对网络设备106-1进行测试得到测试数据,并将得到的测试数据返回给Web测试装置102
优选的,不同的所述会话标识对应不同的会话,不同的所述会话标识对应不同的所述hosts文件
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (6)
1.一种Web测试方法,其特征在于,包括:
代理服务器接收到Web测试装置发送的Web测试请求;
所述代理服务器获取与所述Web测试请求中的会话标识对应的hosts文件;
所述代理服务器根据所述hosts文件中的映射关系将所述Web测试请求中的域名转换成目的IP地址;
所述代理服务器向所述目的IP地址所指示的网络设备请求测试数据;
所述代理服务器将请求到的所述测试数据发送给所述Web测试装置;
其中,在所述代理服务器接收到所述Web测试装置发送的所述Web测试请求之前,还包括:所述Web测试装置将所述会话标识写入到与所述hosts文件对应的会话的cookie中;
所述代理服务器获取与所述Web测试请求中的会话标识对应的hosts文件包括:所述代理服务器从所述Web测试请求携带的所述cookie中获取所述会话标识;所述代理服务器获取与所述会话标识对应的hosts文件。
2.根据权利要求1所述的方法,其特征在于,在所述代理服务器接收到所述Web测试装置发送的所述Web测试请求之前,还包括:
所述代理服务器接收到所述Web测试装置发送的所述hosts文件;
所述代理服务器生成与所述hosts文件一一对应的所述会话标识;
所述代理服务器将所述会话标识发送给所述Web测试装置。
3.根据权利要求1至2中任一项所述的方法,其特征在于,不同的所述会话标识对应不同的会话,不同的所述会话标识对应不同的所述hosts文件。
4.一种代理服务器,其特征在于,包括:
第一接收单元,用于接收到Web测试装置发送的Web测试请求;
获取单元,用于获取与所述Web测试请求中的会话标识对应的hosts文件;
转换单元,用于根据所述hosts文件中的映射关系将所述Web测试请求中的域名转换成目的IP地址;
访问单元,用于向所述目的IP地址所指示的网络设备请求测试数据;
第一发送单元,用于将请求到的所述测试数据发送给所述Web测试装置;
其中,所述获取单元包括:第一获取模块,用于从所述Web测试请求携带的cookie中获取所述会话标识;第二获取模块,用于获取与所述会话标识对应的所述hosts文件。
5.根据权利要求4所述的代理服务器,其特征在于,还包括:
第二接收单元,用于在所述第一接收单元接收到所述Web测试装置发送的所述Web测试请求之前,接收到所述Web测试装置发送的所述hosts文件;
生成单元,用于生成与所述hosts文件一一对应的所述会话标识;
第二发送单元,用于将所述会话标识发送给所述Web测试装置。
6.一种Web测试装置,其特征在于,包括:
第一发送单元,用于向代理服务器发送Web测试请求,其中,所述Web测试请求中携带有会话标识;
第一接收单元,用于接收所述代理服务器发送的、根据所述会话标识对应的hosts文件向网络设备请求到的测试数据;
第二发送单元,用于在所述第一发送单元向所述代理服务器发送所述Web测试请求,之前,向所述代理服务器发送所述hosts文件;
第二接收单元,用于接收所述代理服务器生成的、与所述hosts文件一一对应的所述会话标识;
写入单元,用于将所述会话标识写入到与所述hosts文件对应的会话的cookie中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310062267.9A CN104009880B (zh) | 2013-02-27 | 2013-02-27 | Web测试方法、代理服务器和Web测试装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310062267.9A CN104009880B (zh) | 2013-02-27 | 2013-02-27 | Web测试方法、代理服务器和Web测试装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104009880A CN104009880A (zh) | 2014-08-27 |
CN104009880B true CN104009880B (zh) | 2018-04-17 |
Family
ID=51370376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310062267.9A Active CN104009880B (zh) | 2013-02-27 | 2013-02-27 | Web测试方法、代理服务器和Web测试装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104009880B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105376107B (zh) * | 2014-08-29 | 2020-02-28 | 腾讯科技(深圳)有限公司 | 终端测试方法和代理服务器 |
CN104699612B (zh) * | 2015-03-25 | 2019-05-31 | 北京嘀嘀无限科技发展有限公司 | 用于软件测试中的处理方法、设备和*** |
CN105071981B (zh) * | 2015-07-16 | 2019-01-22 | 福建天晴数码有限公司 | 自动测试相同域名的webapi接口的方法及*** |
CN107092535B (zh) * | 2017-04-18 | 2020-06-19 | 上海雷腾软件股份有限公司 | 用于测试接口的数据存储的方法及设备 |
CN107154976A (zh) * | 2017-05-10 | 2017-09-12 | 北京微影时代科技有限公司 | 网站测试方法、装置以及*** |
CN108153674B (zh) * | 2017-12-26 | 2021-03-23 | 北京奇艺世纪科技有限公司 | 一种云平台的虚拟化方法及装置 |
CN108055168B (zh) * | 2017-12-29 | 2021-06-04 | 广州品唯软件有限公司 | 一种http协议调试***、装置和方法 |
CN107959601A (zh) * | 2018-01-04 | 2018-04-24 | 深圳市富途网络科技有限公司 | 一种快速切换网络测试环境的方法及*** |
CN113708992B (zh) * | 2021-08-13 | 2022-08-12 | 绿盟科技集团股份有限公司 | 一种反向代理测试方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1791037A (zh) * | 2005-12-26 | 2006-06-21 | 北京航空航天大学 | 一种实现Web服务自动化测试的方法 |
CN101345741A (zh) * | 2007-07-13 | 2009-01-14 | 盛大计算机(上海)有限公司 | 基于互联网的代理***及代理连接方法 |
US8037415B1 (en) * | 2007-09-21 | 2011-10-11 | United Services Automobile Association (Usaa) | Systems, methods, and computer readable media for managing a hosts file |
CN102790807A (zh) * | 2011-05-16 | 2012-11-21 | 奇智软件(北京)有限公司 | 域名解析代理方法和***、域名解析代理服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9246699B2 (en) * | 2010-06-07 | 2016-01-26 | Salesforce.Com, Inc. | Method and system for testing multiple components of a multi-tenant, multi-domain, multi-tiered website |
-
2013
- 2013-02-27 CN CN201310062267.9A patent/CN104009880B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1791037A (zh) * | 2005-12-26 | 2006-06-21 | 北京航空航天大学 | 一种实现Web服务自动化测试的方法 |
CN101345741A (zh) * | 2007-07-13 | 2009-01-14 | 盛大计算机(上海)有限公司 | 基于互联网的代理***及代理连接方法 |
US8037415B1 (en) * | 2007-09-21 | 2011-10-11 | United Services Automobile Association (Usaa) | Systems, methods, and computer readable media for managing a hosts file |
CN102790807A (zh) * | 2011-05-16 | 2012-11-21 | 奇智软件(北京)有限公司 | 域名解析代理方法和***、域名解析代理服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN104009880A (zh) | 2014-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104009880B (zh) | Web测试方法、代理服务器和Web测试装置 | |
US10841336B2 (en) | Selectively providing mutual transport layer security using alternative server names | |
US10949903B2 (en) | System, computer-readable medium, and method for blueprint-based cloud management | |
Fehling et al. | An architectural pattern language of cloud-based applications | |
CN103238151B (zh) | 网络复制的技术 | |
AU2015267387A1 (en) | Method and apparatus for automating the building of threat models for the public cloud | |
Suryateja | A Comparative Analysis of Cloud Simulators. | |
CN107608901B (zh) | 基于Jmeter的测试方法及装置、存储介质、电子设备 | |
US11403370B2 (en) | Automatically detecting misuse of licensed software | |
US10924590B1 (en) | Virtual workspace experience visualization and optimization | |
US9866466B2 (en) | Simulating real user issues in support environments | |
CN110737645A (zh) | 一种不同***间数据迁移方法、数据迁移***及相关设备 | |
Wang et al. | GISolve: A grid-based problem solving environment for computationally intensive geographic information analysis | |
CN101247309B (zh) | 一种通用访问多网格平台的*** | |
Schmieders et al. | Architectural runtime models for privacy checks of cloud applications | |
Kankhare et al. | A cloud based system to sense security vulnerabilities of web application in open-source private cloud IAAS | |
Tundo et al. | Monitoring Probe Deployment Patterns for Cloud-Native Applications: Definition and Empirical Assessment | |
CN104796304B (zh) | 云平台测试方法和*** | |
Ullah et al. | IoT resource management using direct discovery mechanism in OCF framework | |
Trinh et al. | Browser Extension-based Crowdsourcing Model for Website Monitoring | |
CN107609070A (zh) | Ndf数据融合平台 | |
US20210373861A1 (en) | Application topology discovery | |
Sumalatha et al. | SaaS multitenant performance testing over social networks | |
Wootten et al. | Actor provenance capture with ganglia | |
Shreyas | Federated Cloud Services using Virtual API Proxy Layer in a Distributed Cloud Environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |