使用JMeter SOAP / XML-RPC请求调用ChemSpell Web服务

时间:2014-10-30 20:11:36

标签: soap wsdl jmeter

我正在尝试测试一个名为ChemSpell的免费服务的Web服务API。我正在尝试使用JMeter的SOAP/XML-RPC Request选项来测试它。我在这方面有点新,不知道要输入什么。调用需要两个参数,出于测试目的,我想设置如下:

姓名=" formeldehyde"

来源="所有数据库"

基于site我推杆" http://chemspell.nlm.nih.gov:80/axis/SpellAid.jws"对于URL和" http://chemspell.nlm.nih.gov"在发送SOAPAction中。我不确定如何配置" Soap / XML-RPC数据"一部分。我认为他们提供的WSDL file应该给我配置该部分所需的一切,但我不确定如何。非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

您需要根据wsdl创建将发送到Web服务的xml,并将其粘贴到SOAP / XML-RPC数据字段中。

xml将描述您要进行的方法调用以及您希望传递给它的数据。

它看起来像这样(你需要用数据替换?):

<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:spel="http://chemspell.nlm.nih.gov/axis/SpellAid.jws/axis/SpellAid.jws">
<soapenv:Header/>
  <soapenv:Body>
    <spel:getSugList soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
      <name xsi:type="xsd:string">?</name>
      <src xsi:type="xsd:string">?</src>
    </spel:getSugList>
  </soapenv:Body>
</soapenv:Envelope>

生成如上所述的空白请求的最简单方法是使用SOAP UI。您只需提供wsdl URL,它就会为您生成所有可能的请求。我将这些复制并粘贴到JMeter。