川石教育
全国咨询热线:136-9172-9932
  1. 首页 > 资讯与干货 > 常见问题

接口性能测试之WSDL协议

作者:川石学院 日期:2021-06-18 15:21:48 点击数:

  关于接口测试应该很多人就有所了解,目前可能很多朋友会使用Jmeter来做接口测试,但其实LoadRunner也是可以使用接口的,使用LoadRunner做接口测试准确的来说是对接口的性能进行测试,本章主要讲解接口性能测试中“WSDL协议”的内容。

接口性能测试之WSDL协议(图1)

  关于性能测试从测试的对象角度来划分,有两种不同的分类:

  一是:基于GUI界面的性能测试(这也是我们通常说的性能测试);

  二是:直接对服务器端的接口进行性能测试;

  在我们国内早期研究性能测试时,一般都是基于GUI界面的性能测试,也就是我们通常说的录制回放的方式进行录制脚本,但随着软件系统越来越复杂,前端界面变化越来越频繁时,传统的这种基于GUI界面的性能测试存在很多的弊端,因为当界面频繁变动的时候,那么每改一次性能测试就必须重新做一次,为了提高工作效率,我们会对后台的服务器所提供的方法直接进行接口测试,这样只要服务器的方法或属性没有变的话,那么就可以不用频繁的、重复的进行性能测试。

  一、WSDL协议简介

  WSDL (全称Web Services Description Language) 是指网络服务描述语言。WSDL 是一种使用 XML 编写的文档。这种文档可描述某个 Web service。它可规定服务的位置,以及此服务提供的操作(或方法)。

  WSDL 文档主要是利用、、和这些的元素来描述某个 web service 的,见表15-1。

接口性能测试之WSDL协议(图2)

  表15-1 web service组成元素

  下面是一个常见WSDL文档的结构: 

  •        <definitions>

  •        <types>

  •         definition of types........

  •        </types> 

  •        <message>

  •        definition of a message....

  •        </message>

  •        <portType>

  •         definition of a port.......

  •         </portType> 

  •         <binding>

  •         definition of a binding....

  •         </binding>

  •         </definitions>

  •   WSDL端口: 元素是最重要的 WSDL 元素。可以描述一个web service、可被执行的操作,以及相关的消息。 元素相当于传统编程语言中的一个函数库(或一个模块、或一个类)。

  •   请求-响应是最普通的操作类型,不过WSDL定义了四种类型:

  •   1) One-way:此操作可接受消息,但不会返回任何响应。

  •   2) Request-response:此操作可接受一个请求并会返回一个响应。

  •   3) Solicit-response:此操作可发送一个请求,并会等待一个响应。

  •   4) Notification:此操作可发送一条消息,但不会等待响应。

  •   WSDL 消息: 元素定义一个操作的数据元素。每个消息均由一个或多个部件组成。 元素相当于传统编程语言中一个函数调用的参数。

  •   WSDL types: 元素定义web service使用的数据类型。为了最大程度的平台中立性,WSDL使用XML Schema语法来定义数据类型。

  •   WSDL Bindings: 元素为每个端口定义消息格式和协议细节。

  •   下面是WSDL 1.2的标准语法: 

  •       <wsdl:definitions name="nmtoken"? targetNamespace="uri">

  •       <import namespace="uri" location="uri"/> *

  •       <wsdl:documentation .... /> ? 

  •       <wsdl:types> ?

  •         <wsdl:documentation .... /> ?

  •         <xsd:schema .... /> *

  •        </wsdl:types>

  •        <wsdl:message name="ncname"> *

  •         <wsdl:documentation .... /> ?

  •         <part name="ncname" element="qname"? type="qname"?/> *

  •         </wsdl:message>

  •         <wsdl:portType name="ncname"> *

  •         <wsdl:documentation .... /> ?

  •         <wsdl:operation name="ncname"> *

  •             <wsdl:documentation .... /> ?

  •             <wsdl:input message="qname"> ?

  •                 <wsdl:documentation .... /> ?

  •             </wsdl:input>

  •             <wsdl:output message="qname"> ?

  •                 <wsdl:documentation .... /> ?

  •             </wsdl:output>

  •             <wsdl:fault name="ncname" message="qname"> *

  •                 <wsdl:documentation .... /> ?

  •             </wsdl:fault>

  •         </wsdl:operation>

  •         </wsdl:portType>

  •        <wsdl:serviceType name="ncname"> *

  •         <wsdl:portType name="qname"/> +

  •     </wsdl:serviceType>

  •      <wsdl:binding name="ncname" type="qname"> *

  •         <wsdl:documentation .... /> ?

  •         <-- binding details --> *

  •         <wsdl:operation name="ncname"> *

  •             <wsdl:documentation .... /> ?

  •             <-- binding details --> *

  •             <wsdl:input> ?

  •                 <wsdl:documentation .... /> ?

  •                 <-- binding details -->

  •             </wsdl:input>

  •             <wsdl:output> ?

  •                 <wsdl:documentation .... /> ?

  •                 <-- binding details --> *

  •             </wsdl:output>

  •             <wsdl:fault name="ncname"> *

  •                 <wsdl:documentation .... /> ?

  •                 <-- binding details --> *

  •             </wsdl:fault>

  •         </wsdl:operation>

  •         </wsdl:binding>

  •         <wsdl:service name="ncname" serviceType="qname"> *

  •         <wsdl:documentation .... /> ?

  •         <wsdl:port name="ncname" binding="qname"> *

  •             <wsdl:documentation .... /> ?

  •             <-- address details -->

  •         </wsdl:port>

  •        </wsdl:service>

  •       </wsdl:definitions>

  本章主要介绍了“WSDL协议”的内容,大家觉得有用的话记得每天来这里和小编一起学习涨薪技能哦。识别下方二维码领取更多学习资料、视频哦(笔芯) 

接口性能测试之WSDL协议(图2)

  附:川石信息全国校区最新开班时间,课程资料获取13691729932(微信同号)。  

接口性能测试之WSDL协议(图3)


相关文章
  • 亚马逊运营成功转行软件测试,薪资13K表示很满意!2021-06-18 15:21:48
  • 西安川石的兰朋友喊你来当他的学弟学妹啦!2021-06-18 15:21:48
  • 国外的月亮也不一定比国内测试猿的年薪美~2021-06-18 15:21:48
  • 建筑工程专业朱同学成功转行为软件测试人!2021-06-18 15:21:48
  • 财务管理专业转行软件测试月薪甩会计几条街!2021-06-18 15:21:48
  • 只有技术沉淀才能成功上岸,深圳就业薪资13K!2021-06-18 15:21:48
  • 薪资11K!实现自我价值,从掌握一门IT技术开始...2021-06-18 15:21:48
  • 文科生转行软件测试照样拿下高薪15K!2021-06-18 15:21:48
  • 恭喜罗同学喜提19.5K,成功入行软件测试!2021-06-18 15:21:48
  • 毕业1年,迷茫的他最终选择转行软件测试2021-06-18 15:21:48