...

SoapUI Pro使用简介

接口测试工具-目录

Web Service简介

Web Service 是一种跨平台RPC(远程方法调用)解决方案。基于SOAP协议,使用XML这种跨平台语言传输对远程方法的调用信息及返回结果,并提供WSDL接口描述服务。
Web Service主要概念如下:

  • SOAP:简单面向对象协议,基于XML语言,使用HTTP协议传输
  • XML:可扩展标记语言,同JSON一样是一种跨平台语言
  • WSDL:Web Service服务描述语言,提供远程对象的调用描述信息(类似于接口文档,XML格式)。

SOAP协议

SOAP协议基于XML语言格式。SOAP消息体,首先必须有个信封(Envelope),信封中可以有信息头(Header)和信息体(Body),其中Body中还可以包含错误信息(Fault),基本格式如下:

<!-- 信封固定格式 指定命名空间为soapenv -->
<soapenv:Envelope xmlns:soapenv="http://www.w3.org/2001/12/soap-envelope" soapenv:encodingStyle="http://www.w3.org/2001/12/soap-encoding">   
    <soapenv:Header>  <!--信息头 可选,可写成但标签-->
        ......
    </soapenv:Header>
    <soapenv:Body>   <!--信息体 实际调用内容-->
        ......
    </soapenv:Body>
</soap:Envelope>

SoapUI Pro 简单使用

SoapUI Pro是一款接口功能测试工具,支持REST和SOAP类型的接口。SoapUI Pro不仅支持接口功能测试,还支持接口压测(Load Test)和安全测试。
SoapUI Pro是商业软件。对应有免费版的Soap UI,在官方网站下载安装即可。
以下通过一个项目演示Soap UI Pro的简单使用

新建项目

示例接口:http://115.28.108.130:4000/?wsdl
对于SOAP类型的接口,由于Postman等不具备将wsdl接口信息解析成对象描述的功能,使用SoapUI Pro更方便。
新建SOAP项目,填写wsdl地址,勾选创建Test Suite,如图2.55所示。

图2.55  新建SOAP项目并自动生成测试套件

新建SOAP项目时可以勾选Create a Test Suite for the imported WSDL,为该项目自动创建一个测试套件,每个接口服务创建一个对应的测试用例,如图2.56所示。

图2.56  勾选Test Suite后自动生成测试套件

项目Application下的接口列表可以用来调试接口,测试套件中对应的测试用例则可以使用指定数据对接口进行测并添加特定的断言。

调试接口

在Application每一个接口下会自动生成一个用于调试的Request 1。点击后,主题区左侧为请求区,右侧为响应区。在请求区中,切换到Form选项卡,填写请求参数,点击请求区左上角绿色的三发送箭头即可发送请求,右侧响应区会显示响应结果,并可通过切换选项卡使用不同形式查看。如图2.57所示。

图2.57  SoapUI Pro 调试接口

测试用例及断言

调试完接口,即可编写对应的测试用例。切换到测试套件中该接口对用的用例中,在请求区填写使用的测试数据,在下方Assertions选项卡工具栏左上角点击添加,选择Property Content,选择Contains包含,填入响应应包含的字段“添加成功”。如图2.58所示。

图2.58  SoapUI Pro 测试用例及断言

4.批量运行

在对所有用例设置完请求数据和断言后,便可运行整个测试套件。在测试套件上点击右键,选择Launch Test Runner,启动测试运行器,在Reports选项卡中勾选Exports all results(not only errors),导出所有结果,并填写导出路径,如图2.59所示。

图2.59  SoapUI Pro 批量运行

点击Launch按钮即可开始运行,如图2.60所示。

图2.60  SoapUI Pro 测试完成

覆盖率报告

专业版的SoapUI Pro还支持生成测试覆盖率报告,即勾选Generrate WSDL Coverage report(SoapUI Pro only),勾选Opens generated report(s) in browser(SoapUI Pro only)后,在运行结束时会自动打开覆盖率报告。如图2.61所示。

图2.61  SoapUI Pro 覆盖率报告

负载测试

Soap UI Pro还支持负责测试。测试套件中每个接口下会有一个Load Test 1,点击该测试,在右侧的主体区输入线程数、选择测试,输入Limits运行时间,点击左上角的运行按钮即可对该接口进行压测。如图2.62所示。

图2.62  SoapUI Pro负载测试

安全测试

SoapUI Pro还支持对接口进行安全测试。在测试套件中指定接口下右键点击Security Test(0),新建安全测试,使用Automatic自动方式。点击Next,如图2.63所示。

图2.63  SoapUI Pro安全测试-自动模式

在生成的安全测试项列表页面,点击左上角的运行按钮即可开始测试,如图2.64所示。

图2.63  运行安全测试

posted @ 2022-03-18 12:28  韩志超  阅读(1023)  评论(0编辑  收藏  举报