专利名称:服务测试环境的构建方法和系统的利记博彩app
技术领域:
本发明实施例涉及组合服务测试技术领域,尤其涉及一种服务测试环境的构建方
法和系统。
背景技术:
随着组合服务技术的发展,对组合服务的测试研究成为了新的亮点。对组合服务 的测试过程,通常包括测试准备、测试执行和测试反馈三个阶段。在测试准备阶段,需要对 测试环境进行构建。目前,国内对组合服务测试的研究还处于起步阶段,服务测试环境的构 建也比较简单。常用的服务测试环境构建方法有通过Axis2实现本地服务部署,利用主容 器平台构建本地服务测试环境。 在实现本发明的过程中,发明人发现现有技术中至少存在如下问题 在组合服务的测试中,服务测试环境的构建关键是要解决其分布式问题,体现web
服务的分布式特点,这样才能使得测试更真实和精确。但是,上述现有的服务测试环境的构
建方法,由于只能实现本地服务部署,构建本地服务测试环境,该测试环境并不能体现web
服务的分布式特点,使得对组合服务的测试并不精确,缺少真实性。
发明内容
本发明实施例提供一种服务测试环境的构建方法和系统,用以解决现有技术中只 能构建本地服务测试环境,不能体现web服务的分布式特点的缺陷,实现服务测试环境的 分布式部署,提高测试精度。 本发明实施例提供一种服务测试环境的构建方法,包括
步骤1 、配置服务测试环境描述文件; 步骤2、解析所述服务测试环境描述文件,得到包括从容器及服务的服务测试环境 部署信息; 步骤3、根据所述服务测试环境部署信息部署所述从容器及服务,完成包括主容 器、从容器及服务的服务测试环境的构建。 本发明实施例提供一种服务测试环境的构建系统,包括
配置模块,用于配置服务测试环境描述文件; 解析模块,用于解析所述服务测试环境描述文件,得到包括从容器及服务的服务 测试环境部署信息; 部署模块,用于根据所述服务测试环境部署信息部署所述从容器及服务,完成服 务测试环境的构建。 本发明实施例的服务测试环境的构建方法和系统,通过设置主从容器的分布式服 务测试环境结构,克服了现有技术中只能构建本地服务测试环境,不能体现web服务的分 布式特点的缺陷,实现了服务测试环境的分布式部署,提高了测试效率。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以 根据这些附图获得其他的附图。 图1为本发明服务测试环境的构建方法实施例的流程示意图;
图2为本发明服务测试环境的构建系统实施例的结构示意图。
具体实施例方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例的主要技术方案为,在获取到服务测试环境描述文件后,解析所述 服务测试环境描述文件,得到包括从容器及服务的服务测试环境部署信息;根据所述服务 测试环境部署信息部署所述从容器及服务,形成包括主从容器的分布式服务测试环境,并 实现服务的远程部署和销毁,完成服务测试环境的构建,以满足组合服务测试环境的分布 性特点,增强测试环境的真实感和测试的精确度。下面通过附图和实施例,对本发明的技术 方案作进一步的详细描述。 图l为本发明服务测试环境的构建方法实施例的流程示意图,如图l所示,本实施
例的构建方法可以包括以下步骤 步骤101、配置服务测试环境描述文件。 具体的,该步骤中的服务测试环境描述文件可以有两种类型。 一种可以是BP丽流 程文件,该文件中已经描述了服务测试环境的部署结构。另一种可以是测试环境描述拓扑 文件,该文件可以为XML格式,其可以通过建模方式自动生成。在实现中,可以预先定义一 种网络服务拓扑描述格式,明确建模图形及其对应的描述文件的关系。然后通过图形化的 建模和拖拽等操作,形成建模图形,并可以自动直观地生成与所形成的建模图形所对应的 网络拓扑描述文件。具体的,该服务测试环境拓扑的定义过程如下在定义服务测试环境拓 扑时,可以首先指定总线地址,在服务测试时可以通过总线上的BusService服务来调用引 擎,以执行服务测试执行;接着,可以指定待部署的服务容器地址和端口,该服务容器的数 量可以为多个,通过指定服务容器地址(ip)和端口号(port),以利于后续将服务分布式部 署在各个容器上;再指定待部署的各原子服务,即将待测试的各服务(service)部署在指 定的服务容器上。 与现有技术中需要人工手动实际构建服务测试环境相比,该测试环境拓扑描述文
件的生成方法,通过图形化建模操作可以模拟实际测试环境,且自动生成测试环境描述拓
扑文件,降低了测试成本,提高了测试效率,满足了测试自动化的发展趋势。 步骤102、解析所述服务测试环境描述文件,得到服务测试环境部署信息。 具体的,如果输入文件为BPMN流程文件,则可以利用BPMN流程分析器进行处理,
直接得到服务测试环境部署信息;如果输入文件为测试环境描述拓扑文件,则可以利用测
5试拓扑描述分析器进行处理,对建模生成的网络拓扑描述文件进行解析,得到服务测试环 境部署信息。 上述得到的服务测试环境部署信息,包括从容器的构建或销毁信息,以及所述从 容器中的服务部署信息。例如,该信息明确了主容器平台需要构建或销毁哪个从容器,在该 从容器中需要部署或停止什么服务等。 步骤103、向主容器平台发送服务测试环境部署请求消息,该请求消息中携带所述 服务测试环境部署信息。 具体的,可以由测试部署引擎向主容器平台发送服务测试环境部署请求消息,请 求主容器平台根据解析服务测试环境描述文件得到的服务测试环境部署信息,部署服务测 试环境。主容器平台是正常执行业务流程的基础设施,同时为测试提供支持,接收服务测试 环境的部署请求。 步骤104、主容器平台根据所述服务测试环境部署信息部署服务测试环境。
在接收到服务测试环境的部署请求后,主容器平台即开始根据服务测试环境部署 信息部署服务测试环境,该服务测试环境部署信息可以包括从容器的构建或销毁信息,以 及所述从容器中服务的部署或反部署信息。具体的,可以包括以下几种情况
当其接收到从容器构建请求时,可以生成指定的从容器。 当其接收到从容器服务部署请求时,可以将该请求发送至指定的从容器,该请求 中明确了构建的从容器中需要放置的服务,则从容器可以向服务分发器发送服务获取请 求,服务分发器接收到该服务获取请求后,可以与服务资源库建立FTP连接,获取下载列 表,下载服务至指定的从容器中,完成在从容器中的服务部署。 当其接收到从容器服务反部署请求时,可以将该请求发送至指定的从容器,从容 器对其中指定的服务的状态进行配置,由活跃转为可用。 当其接收到从容器销毁请求时,可以向指定的从容器发送容器销毁请求,从容器 停止其中的服务运行,并删除其中的服务文件;然后,主容器平台销毁该从容器。该步骤可 以通过接收从容器销毁请求,自动销毁该从容器,实现测试完成后对测试现场的及时清理, 满足了测试的独立性和隔离性需求,且相比现有技术中的手动清理测试环境,提高了效率。
为实现热部署,即使得服务能够在运行态被选择、组装和执行,在系统启动并运行 时就可以部署服务,该步骤中,远程服务热部署工具基于ApacheAxis2容器平台运行,其 中远程服务热部署工具的服务端以服务形式存在Apache Axis2中,服务端通过嵌入操纵 Apache Axis2部署模块核心代码,及时实现热部署而无须等到Apache Axis2轮询。
通过上述部署,可以将服务分布式地部署在各远程从容器上,以便在测试时主容 器平台调用各从容器的服务执行测试,很好的体现了服务的分布式特点,实现了测试环境 的远程分布式部署,增强了测试的真实感和精确度。 本实施例的服务测试环境的构建方法,通过设置主从容器的分布式服务测试环境 结构,克服了现有技术中只能构建本地服务测试环境,不能体现web服务的分布式特点的 缺陷,实现了服务测试环境的分布式部署;此外,通过自动生成服务测司环境描述文件,提 高了测试效率,降低了测试成本。 图2为本发明服务测试环境的构建系统实施例的结构示意图,如图2所示,本实施 例的构建系统可以包括配置模块21、解析模块22和部署模块23。
其中,配置模块21,用于配置服务测试环境描述文件。 具体的,该服务测试环境描述文件可以为BPMN流程文件,或者,测试环境拓扑描 述文件。 该测试环境拓扑描述文件可以是通过拓扑文件生成单元生成的,拓扑文件生成单 元用于通过图形化的建模和拖拽等操作生成表示服务测试环境部署的建模图形,并得到与 所述建模图形相对应的测试环境拓扑描述文件,所述测试环境拓扑描述文件中包括服务测 试环境部署信息。 解析模块22,用于解析所述服务测试环境描述文件,得到包括从容器及服务的服 务测试环境部署信息; 具体的,该解析模块22可以包括BP丽单元221,该BP丽单元221可以为BPMN流 程分析器,用于对BPMN流程文件进行处理;还可以包括拓扑单元222,该拓扑单元222可以 为测试拓扑描述分析器,用于对测试环境描述拓扑文件进行处理。 部署模块23,用于接收所述服务测试环境部署信息,并根据所述服务测试环境部 署信息部署所述从容器及服务,完成包括主容器、从容器及服务的服务测试环境的构建。
具体的,该部署模块23可以包括 从容器构建单元,用于当接收到的服务测试环境部署信息为从容器构建请求时, 生成指定的从容器。 服务部署单元,用于当接收到的服务测试环境部署信息为服务部署请求时,可以 由从容器中的从容器控制管理单元向服务分发器发送服务获取请求,服务分发器与服务资 源库建立FTP连接,下载将部署的服务至指定的从容器中。 服务反部署单元,用于当接收到的服务测试环境部署信息为反服务部署请求时, 指示从容器中的从容器控制管理单元将从容器中的服务状态进行配置,由活跃转为可用。
从容器销毁单元,用于根据从容器销毁信息,指示从容器中的从容器控制管理单 元停止指定的从容器的服务运行,并删除其中的服务文件,再由主容器销毁所述从容器;
热部署工具单元,以服务形式存在于Apache Axis2容器平台运行,用于使所述部
署模块运行在热部署状态,使得服务能够在运行态被选择、组装和执行,在系统启动并运行 时就可以部署服务。 本实施例的服务测试环境的构建系统,通过设置主从容器的分布式服务测试环境 结构,克服了现有技术中只能构建本地服务测试环境,不能体现web服务的分布式特点的 缺陷,实现了服务测试环境的分布式部署;此外,通过自动生成服务测司环境描述文件,提 高了测试效率,降低了测试成本。 本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过 程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序 在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、 RAM、磁碟或者 光盘等各种可以存储程序代码的介质。 最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽 管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然 可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替 换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精
7神和范围。
权利要求
一种服务测试环境的构建方法,其特征在于,包括步骤1、配置服务测试环境描述文件;步骤2、解析所述服务测试环境描述文件,得到包括从容器及服务的服务测试环境部署信息;步骤3、根据所述服务测试环境部署信息部署所述从容器及服务,完成包括主容器、从容器及服务的服务测试环境的构建。
2. 根据权利要求1所述的服务测试环境的构建方法,其特征在于,所述步骤1包括 生成表示服务测试环境部署的建模图形,并得到与所述建模图形相对应的测试环境拓扑描述文件,所述测试环境拓扑描述文件中包括服务测试环境部署信息。
3. 根据权利要求1所述的服务测试环境的构建方法,其特征在于,所述服务测试环境 部署信息包括从容器的构建或销毁信息,以及所述从容器中服务的部署或反部署信息。
4. 根据权利要求3所述的服务测试环境的构建方法,其特征在于,所述步骤3包括 主容器的平台根据从容器中服务的部署信息,向所述从容器发送服务部署请求; 所述从容器根据所述服务部署请求向服务分发器发送服务获取请求,请求获取将部署的服务;所述服务分发器与服务资源库建立FTP连接,下载所述将部署的服务,并将所述服务 发送至所述从容器进行部署。
5. 根据权利要求3所述的服务测试环境的构建方法,其特征在于,所述步骤3包括 主容器的平台根据从容器销毁信息,向所述从容器发送容器销毁请求; 所述从容器停止所述服务运行,并删除所述服务; 所述主容器的平台销毁所述从容器。
6. 根据权利要求1所述的服务测试环境的构建方法,其特征在于,所述步骤3包括 服务热部署工具的服务端以服务形式存在于Apache Axis2容器平台运行。
7. —种服务测试环境的构建系统,其特征在于,包括 配置模块,用于配置服务测试环境描述文件;解析模块,用于解析所述服务测试环境描述文件,得到包括从容器及服务的服务测试 环境部署信息;部署模块,用于根据所述服务测试环境部署信息部署所述从容器及服务,完成包括主 容器、从容器及服务的服务测试环境的构建。
8. 根据权利要求7所述的服务测试环境的构建系统,其特征在于,所述配置模块包括 拓扑文件生成单元,用于生成表示服务测试环境部署的建模图形,并得到与所述建模图形相对应的测试环境拓扑描述文件,所述测试环境拓扑描述文件中包括服务测试环境部 署信息。
9. 根据权利要求7所述的服务测试环境的构建系统,其特征在于,所述部署模块包括 服务部署单元,用于根据从容器中服务的部署信息,通过服务分发器与服务资源库建立FTP连接,下载将部署的服务至所述从容器中;从容器销毁单元,用于根据从容器销毁信息,停止所述从容器的服务运行,删除所述服 务,并销毁所述从容器。
10.根据权利要求7所述的服务测试环境的构建系统,其特征在于,所述部署模块还包括热部署工具单元,以服务形式存在于Apache Axis2容器平台运行,用于使所述部署模 块运行在热部署状态。
全文摘要
本发明提供一种服务测试环境的构建方法和系统,其中,方法包括配置服务测试环境描述文件;解析所述服务测试环境描述文件,得到包括从容器及服务的服务测试环境部署信息;根据所述服务测试环境部署信息部署所述从容器及服务,完成包括主容器、从容器及服务的服务测试环境的构建。本发明实施例的服务测试环境的构建方法和系统,通过设置主从容器的分布式服务测试环境结构,克服了现有技术中只能人工构建本地服务测试环境,不能适应web服务的分布式特点的缺陷,实现了分布式服务测试环境的远程部署和销毁,提高了测试的自动化程度,并保证了测试环境与原有环境的隔离。
文档编号H04L29/08GK101771725SQ20101003366
公开日2010年7月7日 申请日期2010年1月4日 优先权日2010年1月4日
发明者刘旭东, 李翔, 杜宗霞, 金若凡 申请人:北京航空航天大学