我从一个标签中获取数据,然后使用111 22222并使用空格进行拆分 像111和22222。
我想将值转换为两个不同的标签到不同的请求中 让我们说
111表示Tag1,22222表示Tag2
答案 0 :(得分:0)
如果您已经为变量分配了两个不同的值,则可以执行以下操作
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
//get field value from first test step response
def tagOne = 111
def tagTwo = 22222
//Define request you would like to add data to
def holderRequestOne = groovyUtils.getXmlHolder("RequestOneName#Request")
def holderRequestTwo = groovyUtils.getXmlHolder("RequestTwoame#Request")
//Find the fields in the request and set the value you would like in those fields
holderRequestOne.setNodeValue("//XPath","$tagOne")
holderRequestTwo.setNodeValue("//XPath","$tagTwo")
//Update the requests
holderRequestOne.updateProperty()
holderRequestTwo.updateProperty()
这是我使用Groovy脚本的方式。您只需要添加受尊重的XPath和测试步骤名称。
您也可以使用属性转移测试步骤执行此操作。您可以在此处找到更多信息:
https://www.soapui.org/docs/functional-testing/properties/transferring-properties.html
关于你问题的更多信息,你尝试过的代码以及你预期的代码结果不会出错#/ p>
答案 1 :(得分:0)
@Tanveer根据您对Ross的评论答案这里是解决方案
您已获取响应为111 222
log.info Response // 111 222
String [] s = s.split(" ")
log.info s[0] //111
log.info s[1] //222
将值保存在groovy脚本的testCase属性中
testRunner.testCase.setPropertyValue("tagone",s[0])
testRunner.testCase.setPropertyValue("tagtwo",s[1])
在另一个要使用此
的testStep请求中<xmltag1>${#TestCase#tagone}</xmltag1>
<xmltag1>${#TestCase#tagtwo}</xmltag1>
因此我们将属性存储在TestCase级别,并在同一个Testcase的另一个步骤中使用它
如果您希望在另一个测试用例中使用该属性,您可以存储在TestSuite级别
testRunner.testCase.testSuite.setPropertyValue("tagone",s[0])