Jmeter发送SOAP请求对WebService接口测试

Posted 龙腾测试

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter发送SOAP请求对WebService接口测试相关的知识,希望对你有一定的参考价值。

Jmeter也可以对WebService接口测试。本次测试的接口是:

getSupportCityString

获得支持的城市/地区名称和与之对应的ID

输入参数:theRegionCode = 省市、国家ID或名称,返回数据:一维字符串数组。

示例:

SOAP 1.2

以下是 SOAP 1.2 请求和响应示例。所显示的占位符需替换为实际值。

POST /WebServices/WeatherWS.asmx HTTP/1.1

Host: ws.webxml.com.cn

Content-Type: application/soap+xml; charset=utf-8

Content-Length: length

<?xml version="1.0" encoding="utf-8"?>

<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">

<soap12:Body>

<getSupportCityString xmlns="http://WebXml.com.cn/">

<theRegionCode>string</theRegionCode>

</getSupportCityString>

</soap12:Body>

</soap12:Envelope>


HTTP/1.1 200 OK

Content-Type: application/soap+xml; charset=utf-8

Content-Length: length

<?xml version="1.0" encoding="utf-8"?>

<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">

<soap12:Body>

<getSupportCityStringResponse xmlns="http://WebXml.com.cn/">

<getSupportCityStringResult>

<string>string</string>

<string>string</string>

</getSupportCityStringResult>

</getSupportCityStringResponse>

</soap12:Body>

</soap12:Envelope>



Step1:

添加线程组,并添加SOAP/XML-RPC Request Sampler。

Jmeter发送SOAP请求对WebService接口测试

Step2:

在Soap/XML-RPC Data中输入:

<?xml version="1.0" encoding="utf-8"?>

<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">

<soap12:Body>

<getSupportCityString xmlns="http://WebXml.com.cn/">

<theRegionCode>string</theRegionCode>

</getSupportCityString>

</soap12:Body>

</soap12:Envelope>

在发送的信息中,要填写真正的参数替换占位符<theRegionCode>string</theRegionCode>

为TestPlan添加用户定义的变量

Jmeter发送SOAP请求对WebService接口测试

最终发送的数据为

<theRegionCode>${RegionCode}</theRegionCode>

Jmeter发送SOAP请求对WebService接口测试

Step3:

在监听器中插入查看结果树。

发送请求后会发现响应数据错误,提示“服务器未能识别 HTTP 头 SOAPAction 的值: ”

Jmeter发送SOAP请求对WebService接口测试

这是因为服务器不知道以何种类型来解析请求数据,才导致没有正确的数据返回。

所以在发送请求之前,还有一个重要的步骤,就是添加HTTP信息头管理器

Jmeter发送SOAP请求对WebService接口测试


再次发送数据,可以成功获取城市代码。


--------------------------------------------------------------------------------------------------------


重大好消息!!!免费,免费,还是免费~


为了让更多的人了解龙腾,龙腾现推出试听日~

如果有想报名学习性能测试,python测试开发,java测试开发的同学们~

可以速度联系我或胡老师,可安排正式课免费试听一天,不收任何费用!


另外Python基础免费补课三天,想零基础学习自动化的同学们,抓紧报名了~

报名联系QQ:157766255/147772928,微信:18910737736/18910650794

龙腾公开课群:559447683

北京可报线下,全国可报网络,报名联系QQ:157766255/147772928!



以上是关于Jmeter发送SOAP请求对WebService接口测试的主要内容,如果未能解决你的问题,请参考以下文章

jmeter3 测试soap协议-webservice接口

wireshark配合jmeter测试webservice接口

java使用POST发送soap报文请求webservice返回500错误解析

wireshark配合jmeter测试webservice接口

JMeter4.0学习之SoapUI创建WebService接口模拟服务端以及JMeter测试SOAP协议性能测试脚本开发

使用Jmeter测试WebService接口