当前位置: 首页 > 知识库问答 >
问题:

空手道中如何为SOAP创建动态有效载荷

曹沛
2023-03-14

我使用一个变量来读取XML文件,然后将其分配给另一个名为Payload的变量。将XML作为CDATA传递到有效负载中;我的有效载荷结构不会改变。我必须用不同的XML文件ie、不同的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>

"""

共有1个答案

宇文鸿振
2023-03-14

如果您能够通过以下大型示例: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  |
 类似资料:
  • 我需要在空手道测试的功能中使用动态值。 我遇到了一些类似这样的问题和答案:如何从excel电子表格中读取输入数据并在空手道框架中传递JSON负载? 但不管我怎么努力,我都做不到。我相信我应该分享我试图使用的代码部分,这样讨论就可以开始了。 我有一个创建新用户的SOAP请求,如下所示: 正如你所看到的,我有一些将从外部给出的变量,它们是:帐户号、子标识、子类型和移动。 现在,我有了一个特性文件,我在

  • 假设我有一个需求完全相同的测试场景,但有一个路径变量更改,如下所示: 方案:某些方案

  • 我得到的异常显示为“path$.result.(#value)actual:null应为{firstName:'#string'lastName:'#string'}”

  • 我正在寻找一种解决方案,在空手道中动态断言一个json响应,并为每个测试用例不同地维护数据。以下是回应示例: 我想断言id,名称,描述和对象数组,其值根据不同的id的变化。我知道模式方法,但我需要断言具体的价值。我还尝试了匹配功能,为每个测试用例保留json文件,但在不同的测试环境中很难维护。有人能帮我最好的方法来断言,以及如何维护测试数据。

  • 我尝试运行一些测试,如果测试成功,则需要在每个场景结束时调用“”文件,但如果测试失败,则不应调用“”文件。 我测试结果如下所示: 如果响应代码为,则应运行命令“”,如果为,则应跳过此命令。 有人能帮我一下吗?

  • 问题内容: 我在使用primefaces树实现实现动态树结构时遇到了一些麻烦。在primeface提供的展示柜中,代码的结构如下所示。但是,这是非常静态的。我试图弄清楚如何处理从数据库中获取的数据,在编译时树的深度是未知的。 我以为我可能需要某种递归方法来实现此目的,但我无法完全理解实现的样子。 有什么想法吗? 以下是primefaces的示例代码 问题答案: