You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何JMeter验证SOAP XML时返回异常响应,SOAPUI却正常?

JMeter/LoadRunner中SOAP XML验证异常但SOAPUI正常的解决办法

问题现象

在JMeter或LoadRunner中回放SOAP请求时,返回的是服务创建提示页面内容而非预期的SOAP响应,具体响应如下:

#content{ FONT-SIZE: 0.7em; PADDING-BOTTOM: 2em; MARGIN-LEFT: 30px}BODY{MARGIN-TOP: 0px; MARGIN-LEFT: 0px; COLOR: #000000; FONT-FAMILY: Verdana; BACKGROUND-COLOR: white}P{MARGIN-TOP: 0px; MARGIN-BOTTOM: 12px; COLOR: #000000; FONT-FAMILY: Verdana}PRE{BORDER-RIGHT: #f0f0e0 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #f0f0e0 1px solid; MARGIN-TOP: -5px; PADDING-LEFT: 5px; FONT-SIZE: 1.2em; PADDING-BOTTOM: 5px; BORDER-LEFT: #f0f0e0 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: #f0f0e0 1px solid; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e5e5cc}.heading1{MARGIN-TOP: 0px; PADDING-LEFT: 15px; FONT-WEIGHT: normal; FONT-SIZE: 26px; MARGIN-BOTTOM: 0px; PADDING-BOTTOM: 3px; MARGIN-LEFT: -30px; WIDTH: 100%; COLOR: #ffffff; PADDING-TOP: 10px; FONT-FAMILY: Tahoma; BACKGROUND-COLOR: #003366}.intro{MARGIN-LEFT: -15px}

附带文本:XXX ServiceXXX Service

return (<BR/>)
"您已创建一个服务。要测试此服务,您需要创建客户端并调用它。可使用命令行工具svcutil.exe,语法如下....."

但相同的SOAP请求在SOAPUI中运行完全正常。

排查及解决方法

1. 检查请求头配置

SOAPUI会自动添加符合SOAP规范的请求头,而JMeter/LoadRunner可能缺失关键配置:

  • 确保添加Content-Type: text/xml; charset=utf-8请求头
  • 必须配置SOAPAction头,值为对应服务操作的命名空间地址(可从WSDL或SOAPUI的请求中直接复制)

2. 验证请求URL正确性

确认JMeter/LoadRunner中的请求URL指向SOAP服务的端点地址,而非WSDL页面或服务默认展示页:

  • 正确地址示例:http://xxx.xxx.xxx/Service.svc
  • 避免使用带?wsdl后缀的地址

3. 核对请求体格式

对比SOAPUI中的请求体,确保JMeter/LoadRunner中的XML内容完全一致:

  • 检查XML命名空间拼写是否正确
  • 确认参数值的格式、编码符合服务要求
  • 移除请求体中多余的空格、换行或特殊字符

4. 统一身份验证配置

如果服务需要身份验证,确保JMeter/LoadRunner使用与SOAPUI相同的验证方式(如Basic Auth、NTLM等),并核对凭证信息无误。

5. 对齐网络环境配置

检查JMeter/LoadRunner的代理设置,确保与SOAPUI的网络环境一致:

  • 若使用代理,需配置相同的代理地址、端口及认证信息
  • 确认防火墙或安全软件未拦截JMeter/LoadRunner的请求

内容的提问来源于stack exchange,提问作者Yasir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 17:42:20