WebService接口的软件测试的流程方法,并进行了测试实践.根据被测软件的特征开发相应测试工具,便捷的开展测试,提高测
试效率和质量关键词:WebService;测试框架;工具开发中图分类号:TP311.5 文献标识码:A 文章编号:2096-4390(2019)14-0064-031概述随着技术的发展.越来越多
的领域使用通信软件来进行设
备间的交互,设备间的接口协议
类型有传统的基于串口、TCP/IP 协议。基于串口或TCP/IP协议 的测试都有成熟的测试方法及
工具,如用TCP调试助手发送协 议报文到被测软件,观察被测软 件收到报文后的响应,以此来判
断被测软件对报文处理的正确
性。WebService的框架基于
图1 WebService调用关系SOAP (Simple Objeel
AccessProtocol)和 XML 技术,具
备语言及运行平台独立性的特 点.由于WebService本身具有的 优势,越来越多的接口采用
WebServiceo 对基于 WebService
接口的软件进行测试时存在困 难如下:⑴从客户端入手测试, 测试者无法获取服务器端
图2 WebService工作原理WebService的具体信息,只能通过WebService接口来进行服务 返回给请求者\"⑶服务提供者通过SOAP消息实现Web服务的
调用〉⑵从服务端入手测试,基于WebService接口的软件存在 应用.根据SOAP消息响应相符合的Vi外服务,然后将结果返 语言及运行平台独立性的特点,只能通过具体的客户端实现测 回给Weh服务请求者,试.而往往客户端的测试参数无法灵活输入本文以网管软件 WebService的规范标准完全独立于平台及语言,因此多个 测试为例,针对基于WebService的特点进行了测试方法的探 平台上的不同应用之间能无障碍的实现信息互通而不再依赖 讨于附加的第二:方软件 若多个应用都是基丁 WebService的规范
标准.那么服务之间可实现数据的互通.无需关心具体的实现语 2 WebService 接 口分析WebService的应用实现通过向外界发布如何调用自身功能 言、应用平台等实现WebService服务的过程是服务端与客户
和服务的描述,包括地址URI.、所提供的接\"方法和输入参数 端共同完成的,WebService服务端通过WSDL来描述服务的相 等说明信息.WebService的构成结构包含-:角色及三操作,:. 关信息,而客户端通过SOAP消息发出请求并调用服务 在具体
角色分别指服务提供者、服务请求者和服务中介者,三操作分 项目上将业务需求封装成方法生成WSL)L文档,并通过Web服 别指发布、査找和绑定;通过•:角色及-:操作的配合共同实现 务中介者发布,WebService客户端通过WS1儿文档获取相应的
WebService应用,实现过程如下:⑴实现WebService服务应用的 方法描述及输入参数.依据方法参数调用服务.客户端服务调 前提是有一个调试正常的Weh服务,该Weh服务由服务提供 用过程是将含有服务方法名及参数的SOAP消息传递给服务 者提供并将其向服务中介者申请发布' (2)若服务请求者发出服 端,服务端根据得到的方法参数执行服务并将SOAP结果传回 务请求时,需要通过服务中介者传递请求并查询UDDI注册中 客户端.客户端依据SOAP结果解析生成对象结果:工作流程如
心,为请求者搜寻符合条件的服务,并将该Web服务描述信息图2所示2019.14科学技术创新 - 65 -3基于WebService的测试框
架基于WebService接口的软件 测试中,主要是的测试方面有功能
Service被测软件MyPortWebserxdceTool及性能测试,而负载测试是性能测 试中的重要组成部分。功能测试由
自开发的模拟客户端WebService
Request测试工具对Web服务进行测试; 负载测试则可以模拟不同的时间
间隔服务调用功能操作来对Web
服务测试。Reponse图3表示基于WebService功 能测试的框架图.其中Service表
示一个WebService应用的服务,
Myport 代表客户端, WebServiceTool为装在客户端上的
自研测试工具,可以对Service发
“1图3基于WebService的测试框架文件列表si文件内容on=*i 0* •i»codin^*UTF-8*?>
接收内容imi ocalhost 1043/v*bsit«l/Service asnxdktkbks* x・l送Request进行功能请求,请求发 送后可返回功能请求是否成功的 回应。在WebSenieeTool工具上选 择单次服务调用町进行功能测试,
\\blocklist
xmlns=*http //www mozillt o rc/2006/»dddns-bl«cklist*>亦可选择定时调用,输入时间间
隔,来进行负载压力测试。4基于WebService的测试分
析1 d=\"fd»_ffext8fr*edownloadB ut・“r or<*> 4.1自研工具介绍对服务端的应用程序缺少必 要的测试工具,如何去连接应用服 nyer or<\"> ・inV«r”on=\"l 0* ■*xV«moa=\"l 3J\"> 分必要在本次测试中,自开发了可用于WebService接口的测 试工具。根据服务端提供的URI.、方法、参数可以对其服务调 用,进而进行相应的测试:验证服务端提供的功能及性能是否 满足要求。败时返回“FALSE”;性能要求满足每O.h上报一次故障时.客户 端Web界面显示不会出现卡顿现象。4.2.1基于WebService的测试流程如下:1>.定义服务请求的数据类型.描述服务方法和参数, MethodNanie指要请求的方法名称;输入参数类型为字符串,采 用XML标准格式。文件以列表的形式显示在XML文件列表中。选中某个XML文 type record ServiceType {件可以显示文件内容,可以对文件内容进行编辑修改并及进行 启动工具可加载工具文件夹下的XM1.参数,所有的XMI. 保存,对调用参数设置.输入URL地址,调用方法,并进行服务 string xml调用,对服务端函数的调用结果做为接收内容显示出来本工具能够支持XML文件做为输入参数,能够显示调用服 string MethodName,务端的结果。输入定时时间,可按照定时时间间隔对服务进行 b.按照自定义的服务请求数据类型.确定测试数据模板,包 含测试输入及期望测试结果。调用,用于性能测试,当前的服务调用参数保存在列表中,下次 可直接使用。工具界面如图4所示。如服务端的一个简单的功 template ServiceTypeReq_a := {能.收到一个XML文件数据,将相应的数据返冋给客户端:对该 功能进行测试.输入服务所在的URL、需要的方法及参数,进行 服务调用。若功能止常,则会返冋相应的XML数据,进而可验证 MethodName: = \" rptAlarm \xml: = \" -< username=\"ii(lnHnn password=\"admin\">— 提供网管分系统设备故障上报接口,上报参数为XML类型信 息XML类型信息描述了故障发生的设备、故障类型、故障原 reason=\"disconnectH desc.ription=\"down'' tinie=\"2016-l 1-248:09: 17\" />因、描述、发生时间等消息上报成功时会返回字符“TRUE”,失-66- 科学技术创新2019.14表1测试结果测试用例测试输入测试输出预期结果T_001URL: www.guzhangjiance.net方法:rptAlarm参数:XML (故障信息)TRUE上报成功URL: www.guzhangjiance.netT_002方法:rptAlarm参数:XML (故障信息)定时调用间隔:100msTRUE客户端Web界面显示流畅艮如能流畅显示故障信息。basedFramework for WebServices Testing [C]//Proc. of the 7thIEEEIntemational Symposium on High Assurance SystemsEngineering.Tokyo, Japan: [s.n.], 2002: 173-174.Templatestring Req_a :二\"true\";c.确定URL、服务名称、xml参数,分别输入WebServicetool 工具中的调用参数列,运行工具,查看Web客户端是否显示调 用服务输出的参数。调用返回结果是否预期结果一致。4.2.2性能测试实践模拟设备上报故障信息,输入服务调用URL、方法、模拟包, 定时速率发送,查看Web客户端是否收到模拟上报信息。当故 障报文每间隔0.1s上报一条时,客户端Web界面需支持流畅显 不。在WebServicetool调用参数设定栏中URL为www. guzhangjiance.net,方法为rptAlarm,输入参数为XML文件(故障 报文信息),与测试流程中b.中的XML1参数信息一致。打开定 时调用选项,输入时间间隔为100ms,持续调用服务1小时,观 察客户端Web界面故障告警信息显示是否流畅。4.3测试结果在功能测试中,采用自研测试工具WebServicetool,确定调 用服务的WSDL、方法名称、参数XML,调用服务成功后,查看 web客户端界面显示故障信息,比较故障信息与所调用的服务 的参数XML里的内容,确定故障类型、故障原因、描述、发生时 间等字段信息两者一致。在性能测试中,采用自研测试工具WebServicetool,确定调 用服务的WSDL、方法名称、参数XML,输入定时调用时间间隔。 启动工具运行,查看Web客户端逐条显示故障信息是否流畅, 故障内容是否与参数XML—致。测试结果见表1。结束语本文基于WebService软件测试的特点,进行了 WebService 接口分析、测试框架、功能性能测试方法等方面做了探讨。以网 管类软件为例描述了测试的方法步骤,做了相应的WebService 专用测试工具以适应此类软件的测试,提高了测试效率,取得 良好成效。参考文献[1] 庄秀丽,孙波.基于WebService异构教育资源库数据共享方 法的研究与实现[J].电化教育研究,2003, (02):47-50.[2] Tsai W T, Ray P, Song Weiwei, et al. Coyote: An XML- 因篇幅问题不能全部显示,请点此查看更多更全内容