0

我的套件中有 2 个测试用例。第一个测试用例包含 1 个带有 xml 请求的测试步骤。第二个测试用例包含 1 个带有 groovy 脚本的测试步骤。我想多次从这个 groovy 脚本运行第一个测试用例。每次我想更改输入 XML。我无法更新 TestCase 1 中的输入 XML。我有以下 groovy 脚本的代码:

import com.eviware.soapui.support.XmlHolder
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context);
def tsuite = testRunner.testCase.testSuite
def acctInq_tstepName = tsuite.getTestCaseAt(1).getTestStepAt(0).getName()
def acctInq_requestHolder = tsuite.getTestCaseAt(1).testSteps[acctInq_tstepName].testRequest.getRequestContent()
def acctInq_req = groovyUtils.getXmlHolder("$acctInq_requestHolder")
acctInq_req["//soapenv:Envelope[1]/soapenv:Body[1]/v2:AcctInqRq[1]/ifx:DepAcctId[1]/ifx:AcctId[1]"] = "0009917812344"
acctInq_req.updateProperty()

我也尝试过使用

tstep.setPropertyValue("request",cStr(acctInq_req))

无论哪种情况,XML 都不会更新。请帮忙。

4

1 回答 1

0

尝试如下设置节点值并检查它是否解决了问题:

acctInq_req.setNodeValue("//*:ifx:AcctId[1]", "0009917812344")
于 2017-12-04T15:24:52.967 回答