如何测试webservice接口
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何测试webservice接口相关的知识,希望对你有一定的参考价值。
参考技术A 1.了解url:
http://localhost:8080/test/services/user?wsdl;
2.新建web
service
项目
Test,启动接口;
3.在项目Test上新建一个
web
service
client
,选择JAX_WS;
4.Test项目会自动生成关联代码,新建一个Java类,main方法
public static void main(String[] args)
System.out.println("123");
ServiceCommandService sc = new ServiceCommandService();
IServiceCommand is = sc.getServiceCommandPort();
String s = is.queryInstanceById();
System.out.println(s);
String s2 = is.queryInstanceList();
System.out.println(s2);
jmeter3.2版本如何进行webservice接口功能测试
jmeter3.2版本之后就没有SOAP/XML-RPC Request插件了,所以没办法直接进行webservice接口的测试。
原理上:
Web service一般就是用SOAP协议通过HTTP来调用它,其实他就是一个WSDL文档,客户都可以阅读WSDL文档来用这个Web service。
SOAP简单的理解,就是这样的一个开放协议SOAP=RPC+HTTP+XML:采用HTTP作为底层通讯协议;RPC作为一致性的调用途径,XML作为数据传送的格式,允许服务提供者和服务客户经过防火墙在INTERNET进行通讯交互。
所以其实我们是可以通过一些方法来通过,jmeter中的http请求来测试webservice.
当然官网的手册上也说明了是可以的。只需要借助http信息头管理器两个参数Content-Type和SOAPAction。
首先需要在SOAPUI中新建project填入webservice接口地址。并且在接口中填入参数,点击发送。
确保参数发送成功,具体如下图。
这一步是为了获取一些jmeter没有的信息
1、测试计划-->右击添加-->Threads-->新增线程组
2、线程组-->右击配置元件-->增加http信息头管理器
3、线程组-->点击添加-->Sampler-->HTTP请求
4、http信息头管理器需要填入Content-Type(必填)或者SOAPAction,而SOAPAction不是必须填的信息。
这两个数据要从soapUI中进行获取。当蓝色划线显示不为"http://"开头的信息时,这个soapAction的信息就不是必填的。
在http信息头管理器中,我们需要填入Content-Type信息
5、在HTTP请求中XML中的数据信息,全部复制到jmeter的HTTP请求中的Body Data。
6、然后发送请求,成功(*^▽^*)
本篇文章适合在什么场景下使用?
1、在基于接口是webservice的情况下,想在jmeter实现轻量级接口自动化。
2、在仅会jmeter不会LR的情况下,想要对webservice接口进行性能测试。
资料:来自jmeter官网
https://www.cnblogs.com/stone9159/p/8078842.html
https://www.cnblogs.com/leijiangtao/p/5137351.html
以上是关于如何测试webservice接口的主要内容,如果未能解决你的问题,请参考以下文章