【问题标题】:How to create dynamic payload for SOAP in karate如何在空手道中为 SOAP 创建动态有效负载
【发布时间】:2019-08-20 14:24:44
【问题描述】:

我正在使用一个变量来读取 XML 文件,然后将其分配给另一个名为 payload 的变量。在有效负载中将该 XML 作为 CDATA 传递;我的有效载荷结构不会改变。我必须使用不同的 XML 文件(即不同的 CDATA)进行三到五个连续的 SOAP 调用。现在我正在重复此代码以进行三到五个连续的 SOAP 调用,有什么方法可以避免重复相同的代码,或者您能建议我更好的编写方法吗?

* def temp = read('abc.xml')

* xmlstring data = temp

* def payload = 
"""
<?xml version="1.0"  encoding="UFT-8"?>
<soapenv:Envalope xmlns:...........>
  <soapenv:Header/>
  <saopenv: Body>
    <con:processRequest>
      <xmlMessage><!CDATA[#(data)]]></xmlMessage>
       ..............
       .........
  </soapenv:Body>
</soapenv: Envalop>

"""

【问题讨论】:

    标签: karate


    【解决方案1】:

    如果您可以通过这个大示例来回答您的所有问题:xml.feature

    但这是一个示例,请参阅文档中的此部分:https://github.com/intuit/karate#data-driven-tests

    * xmlstring data = read(filename)
    * def payload = 
    """
    <root><value>#(data)</value></root>
    """
    
    Examples:
    | filename |
    | abc.xml  |
    | def.xml  |
    

    【讨论】:

      猜你喜欢
      • 2015-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-22
      • 2017-11-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多