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。
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添加用户定义的变量
最终发送的数据为
<theRegionCode>${RegionCode}</theRegionCode>
Step3:
在监听器中插入查看结果树。
发送请求后会发现响应数据错误,提示“服务器未能识别 HTTP 头 SOAPAction 的值: ”
这是因为服务器不知道以何种类型来解析请求数据,才导致没有正确的数据返回。
所以在发送请求之前,还有一个重要的步骤,就是添加HTTP信息头管理器
再次发送数据,可以成功获取城市代码。
--------------------------------------------------------------------------------------------------------
重大好消息!!!免费,免费,还是免费~
为了让更多的人了解龙腾,龙腾现推出试听日~
如果有想报名学习性能测试,python测试开发,java测试开发的同学们~
可以速度联系我或胡老师,可安排正式课免费试听一天,不收任何费用!
另外Python基础免费补课三天,想零基础学习自动化的同学们,抓紧报名了~
报名联系QQ:157766255/147772928,微信:18910737736/18910650794
龙腾公开课群:559447683
北京可报线下,全国可报网络,报名联系QQ:157766255/147772928!
以上是关于Jmeter发送SOAP请求对WebService接口测试的主要内容,如果未能解决你的问题,请参考以下文章
wireshark配合jmeter测试webservice接口
java使用POST发送soap报文请求webservice返回500错误解析
wireshark配合jmeter测试webservice接口
JMeter4.0学习之SoapUI创建WebService接口模拟服务端以及JMeter测试SOAP协议性能测试脚本开发