WebService中的WSDL详解 及jmeter测试
首先简单讲解一下什么是wsdl.
一个WSDL文档通常包含8个重要的元素,即definitions、types、import、message、portType、operation、binding、service元素。这些元素嵌套在definitions元素中,definitions是WSDL文档的根元素。
WSDL文档外层结构图示:
WSDL 服务进行交互的基本元素:Types(消息类型):数据类型定义的容器,它使用某种类型系统(如 XSD)。Message(消息):通信数据的抽象类型化定义,它由一个或者多个 part 组成。Part:消息参数PortType(端口类型):特定端口类型的具体协议和数据格式规范。,它由一个或者多个 Operation组成。Operation(操作):对服务所支持的操作进行抽象描述,WSDL定义了四种操作:1.单向(one-way):端点接受信息;3.要求-响应(solicit-response):端点发送消息,然后接受相关消息;4.通知(notification[2] ):端点发送消息。Binding:特定端口类型的具体协议和数据格式规范。Port:定义为绑定和网络地址组合的单个端点。Service:相关端口的集合,包括其关联的接口、操作、消息等。外层结构里面也可能有多层结构。
小编在测试过程中多次遇到上图样式的接口 也就是俗称“WebService”接口类型,对于这类接口测试工具有不少,LR、soapUI、jmeter。。。其中对于WebService类型接口支持最高的 要属于soapUI这个接口测试工具,我们今天来说说关于jmeter怎么进行测试。小编使用的是3.2版本的jmeter;jmeter在3.2版本取消了 soap/xml这个Request,可以直接使用Http Request-Body Data 来进行测试。
至于怎么测试,分析上图就能得出有两个部分,上面的部分就是我们需要发起的请求类容,其中包含了参数名称,参数类型,接口名称。。。。 至于接口地址就是这个页面的URL地址,直接复制粘贴。填入相关的参数就完成了。相比其他类型的接口,WebService类型接口是比较简单的,就是有点繁琐。下图就是一个会员接口,这里还要说一下,关于类似接口 一定需要添加信息头!!!!否则会出错