使用soapUI基于Http调用WebService接口

1.接到需求开发一个服务接口,因原项目是webservice搭建的,所以再此基础上进行开发。数据传递的格式是xml

2.开发完成后,本地使用axis的api测试通过,可以正常返回数据。代码交给实施人员部署后,调用方反馈有问题soapenv:Server.userException,询问后得知调用方代码是用httpclient调用的,测试工具是用soapui、postman。所以怀疑是调用方式出了问题。

3.因为本人也没有试过用httpclient调用webservice接口,所以比较感兴趣,百度资料后解决了问题,现总结下:
使用的soapui版本是5.1.2,image.png
?处的内容替换为要发送的数据即可,但是要注意当发送的内容是xml格式(含有<或>)时,需要使用<![CDATA[数据]]>,将数据包起来。使用soapui也可以基于http去调用webservice接口,使用rest方式去new project:

![CDATA[数据]]>,将数据包起来。使用soapui也可以基于http去调用webservice接口,使用rest方式去new project:image.png
image.png
要注意的是此时要添加请求头SOAPAction,必须要有,值为空没问题。

使用postman的方式,和使用soapui基于http的方式一样。
使用httpclient通过代码调用,同样要添加请求头SOAPAction,并且要注意报文格式。

很多奇怪的问题都是报文格式导致的:
要发送的xml报文一般以<?xml version="1.0" encoding="UTF-8" ?>开头,注意<?xml前面不要有空格、换行,?>后至少要有一组,否则会报错。

### 回答1: SoapUI是一款功能强大的工具,可以用来测试和调用Web服务接口使用SoapUI调用Web服务接口需要先创建一个项目,然后添加一个接口,接着添加一个操作,最后配置请求和响应参数即可完成调用。在调用过程中,可以通过SoapUI提供的各种功能来进行测试和调试,例如断言、日志记录、性能测试等。总之,SoapUI是一款非常实用的工具,可以帮助开发人员快速、准确地测试和调用Web服务接口。 ### 回答2: SoapUI是一种用于测试Web服务的开源工具。它可以通过简单而强大的用户界面帮助开发人员和测试人员创建,维护和执行自动化API测试。SoapUI支持不同类型的Web服务标准,包括SOAP,REST和HTTP等。本文将重点介绍如何使用SoapUI调用Web服务。 首先,在SoapUI中创建新的项目: 1. 打开SoapUI并在左侧面板中选择“新建项目”。 2. 输入项目名称或任何项目相关的信息,例如项目描述和组织名称,并单击“确定”创建新项目。 3. 在创建新项目时,会自动创建一个新的测试套件,以便您可以添加测试用例和测试步骤。 4. 在测试套件上右键单击并选择“新建测试用例”。输入测试用例名称和任何相关信息,并单击“确定”。 5. 在测试用例上右键单击并选择“新建测试步骤”。在“测试步骤”下拉列表中选择“SOAP请求”(如果您要测试的是SOAP服务)并单击“确定”。 6. 在“SOAP请求”页面中,输入Web服务的地址和命名空间,并选择要调用的操作。您可以使用WSDL链接直接从Web浏览器中获取这些信息或手动输入它们来调用Web服务。 7. 在“请求窗口”中,在SOAP消息正文中定义请求内容。请注意,SOAP方法和输入参数将自动生成,并与您在步骤6中选择的操作相关联。 8. 单击“运行”以开始测试。 9. SoapUI将向Web服务发送请求并将响应显示在“响应窗口”中。在此处观察结果。 10. 您还可以在SoapUI中添加测试脚本和检查点,以确保API是否按预期运行。这可以通过Groovy脚本完成。 综上,SoapUI使用非常简单,按照上述步骤操作,即可完成调用Web服务并对其进行测试。在测试过程中,您可以随时添加测试用例和测试步骤,并使用集成的测试报告查看测试结果。这使得SoapUI成为一种功能强大且易于使用的工具,可以帮助您快速检测和修复Web服务中的错误。 ### 回答3: SoapUI是一款非常流行的API测试工具,特别适用于测试Web服务或SOAP/REST API的测试。 首先,启动SoapUI并创建一个新项目。在项目中,添加一个新的测试套件,并添加一个新的测试用例。在测试用例中,我们添加一个步骤——"WebService请求"。 在"WebService请求"步骤中,我们需要设置请求URL和请求方法。在SOAP中,我们通常使用POST方法进行请求,因为SOAP消息通常以XML格式进行传输。因此,在我们的测试用例中,我们需要设置一个POST请求并提供请求URL。 在请求头部,我们需要指定该请求要使用HTTP头部信息,如Content-Type、Accept等。在请求主体中,我们需要提供对应的SOAP操作信息。 在SoapUI中,我们可以提供一个WSDL(WSDL是Web Services Description Language的缩写,是用于描述Web服务的一种语言)文件,从而自动生成对应的SOAP消息体。我们可以通过在请求主体中单击右键并选择"Generate"来自动生成SOAP消息体。 在SOAP请求中,我们需要为每个操作提供一个操作名称、命名空间和请求格式。这使得SOAP消息可以与WSDL文档相匹配,并针对每个SOAP操作提供所需的输入和输出参数。 在构建SOAP请求时,我们还可以在请求主体中提供SOAP Header以及SOAP Envelope。将数据封装在SOAP Envelope中,以确保数据传输始终具有统一的格式和标准。 完成SOAP请求的设置后,我们可以执行该测试用例,并在测试面板中查看结果。此结果将显示请求的响应数据、状态代码等。 SoapUI还提供了其他有用的功能,如自动生成测试报告和执行自动化测试等。 总之,在SoapUI调用Web Service接口非常简单。我们只需定义请求URL、请求主体、操作名称等关键属性即可。这使得我们可以更快、更有效地测试我们的Web服务,并保证服务的质量达到预期。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值