当我尝试在Robot框架中使用zeeplibrary调用soapmethod时,我得到一个缺少元素的错误。我不明白为什么,xml中同一级别的其他三个元素似乎没有给出问题。如果通过SoapUI发送xml,则xml工作正常
我的机器人脚本如下所示:
*** Variables ***
${XML_Cardscan240} Resources/Inputs/cardscan240.xml
*** Test Cases ***
Cardscan
${requestblank} get file ${XML_Cardscan240}
log ${requestblank}
${requesttest} Replace String ${requestblank} _Card_ 4207575
log ${requesttest}
${XMLRequest} parse xml ${requesttest}
Create soap client ../../resources/WSDL/SIT_MA_ASW POS Inbound.WSDl
${response} call soap method ASWPOSInboundLoyaltyMember ${XMLRequest}
我的xml文件如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:cus="http://application.com/CustomUI">
<soapenv:Header/>
<soapenv:Body>
<cus:POSInboundLoyaltyMember_Input>
<cus:CardNumber>_Card_</cus:CardNumber>
<cus:MessageXML><![CDATA[<?xml version="1.0"?>
<PrivateData>
<LoyaltyMessageNumber1>
<Customer MsgType="1" StoreID="124" PosID="1" TransID="124"
BusinessDate="2005/02/16">
<LoyaltyInfo CardID="_Card_" CardIDType="P" />
</Customer>
</LoyaltyMessageNumber1>
</PrivateData>
]]></cus:MessageXML>
<cus:BUID>9999000188</cus:BUID>
<cus:MessageType>0240</cus:MessageType>
</cus:POSInboundLoyaltyMember_Input>
</soapenv:Body>
</soapenv:Envelope>
WSDL文件的相关部分如下所示:
><xsd:element
name="ASWPOSInboundLoyaltyMember_Input"
><xsd:complexType
><xsd:sequence
><xsd:element
name="CardNumber"
type="xsd:string"
></xsd:element
><xsd:element
name="MessageXML"
type="xsd:string"
></xsd:element
><xsd:element
name="BUID"
type="xsd:string"
></xsd:element
><xsd:element
name="MessageType"
type="xsd:string"
></xsd:element
></xsd:sequence
></xsd:complexType
></xsd:element
><xsd:element
name="ASWPOSInboundLoyaltyMember_Output"
><xsd:complexType
><xsd:sequence
><xsd:element
name="MessageType"
type="xsd:string"
></xsd:element
><xsd:element
name="MessageXML"
type="xsd:string"
></xsd:element
><xsd:element
name="ResponseCode"
type="xsd:string"
></xsd:element
></xsd:sequence
></xsd:complexType
></xsd:element
><xsd:element
有人知道出了什么问题?我得到的确切错误是“ValidationError:缺少元素MessageXML(aswPosinboundLoyaltMember_Input.MessageXML)”
目前没有回答
相关问题 更多 >
编程相关推荐