我对Groovy和SOAPUI完全陌生。
场景:比较两个xml响应。(两者属于不同的项目)
尝试的方法:捕获响应并将响应写入文件,比较两个文件。
面临的问题:时间戳不匹配,因为两个请求在不同时间运行
由于上述问题,我尝试获取时间戳的节点值,并将这两个响应的值都更改为*。但我无法写入更改的响应值。
Groovy脚本:
def groovyUtils = new com.eviware.soapui.support.GroovyUtils( context );
log.info( groovyUtils.projectPath );
def holder = groovyUtils.getXmlHolder( "loginRequest#Response" )
holder.setNodeValue( "//ns3:loginUserResponse[1]/ns3:loginUserResponse/userModel/auditModel/timestamp", "1" );
最初def持有者
保存响应xml,但在持有者中获取xml后,我正在更新节点值。我不确定如何进一步进行。我需要将更新后的xml写入文件。
下面是一个示例groovy脚本,它使用任意xml并根据特定条件更新元素值。然后,它根据请求将更新后的数据写回文件。请遵循脚本的在线注释。
我相信这将帮助您理解并能够将其应用到实际的xml中。
这个脚本实际上做什么
当汽车名称为i30时,此xml对于madeBy的值不正确。并且喜欢使用现代更新xml并将其写入指定的文件。
/**
* below is the groovy script which read and parses xml
* and updates its value and then writes back to file
**/
import groovy.xml.*
//Sample xml string
def xml = '''<?xml version="1.0" encoding="utf-8"?>
<cars>
<car>
<name>Jetta</name>
<madeBy>Volkswagen</madeBy>
</car>
<car>
<name>Polo GT</name>
<madeBy>Volkswagen</madeBy>
</car>
<car>
<name>i30</name>
<madeBy>Typo</madeBy>
</car>
</cars>'''
//if you want to pass the dynamic response instead of above fixed xml, then
//use below statements by uncommenting below one and replace value for TEST_STEP_NAME and
//comment above xml statement
/**
def xml = context.expand('${TEST_STEP_NAME#Response}')
**/
//parse the xml string and create object
def cars = new XmlSlurper().parseText(xml)
//find the car whose name is i30 and update its madeBy element value to Hyundai
cars.'**'.find { if (it.name == 'i30') it.madeBy = 'Hyundai'}
//print changed cars object
println XmlUtil.serialize(cars)
//Serializes and Writes cars object into given file
new File('c:/Temp/test1.xml').write(XmlUtil.serialize(cars))
如果您打开xml文件,输出应如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<cars>
<car>
<name>Jetta</name>
<madeBy>Volkswagen</madeBy>
</car>
<car>
<name>Polo GT</name>
<madeBy>Volkswagen</madeBy>
</car>
<car>
<name>i30</name>
<madeBy>Hyundai</madeBy>
</car>
</cars>
您可能还会发现这个示例很有用,它说明了如何完全创建一个新的xml。
我是groovy的初学者,正在尝试解析XML并将结果记录插入MySQL数据库示例SOAP XML响应 SOAPUI GROOVY teststep脚本 提前感谢您的任何帮助!
我正在使用改型,我想访问从服务器返回的JSON响应。有人能给我提个建议吗?谢谢
APIService: 在活动调用API中:
问题内容: 我有一个包含XML的Java字符串,没有换行或缩进。我想将其转换为格式正确的XML字符串。我该怎么做呢? 注意:我的输入是String。我的输出是String。 (基本)模拟结果: 问题答案: 注意:结果可能因Java版本而异。搜索特定于你的平台的解决方法。
显然,是一种新的建议的HTTP请求方式,所以我尝试使用它向美味的API发出请求,它返回一个XML响应。我得到的是: 但是,它会在位上引发异常, 其他信息:无法加载文件或程序集“NewtonSoft.json,Version=4.5.0.0,Culture=Neutral,PublicKeyToken=30AD4FE6B2A6AEED”或其依赖项之一.系统找不到指定的文件。 也许我错过了一些集会,但
问题内容: 我不太了解React Material-UI网格系统。如果要使用表单组件进行登录,最简单的方法是在所有设备(移动设备和台式机)的屏幕上居中显示它? 问题答案: 由于您将在登录页面中使用它。这是我在使用Material-UI的登录页面中使用的代码 这将使此登录表单位于屏幕中央。 但是IE仍然不支持Material-UI网格,您将在IE中看到一些放错位置的内容。 希望这会帮助你。