我试图在持有人变量中保留我的请求的回复,但我无法做到。
在SoapUI中groovyutils
是内置的,可以轻松使用。但我正在使用groovy发送我的肥皂请求,它工作正常。现在我想在持有人中得到答案并提出一些断言。
我的代码是:
import com.eviware.soapui.*
def groovyUtils = new com.eviware.soapui.support.GroovyUtils()
def responseHolder = groovyUtils.getXmlHolder( messageExchange.responseContent )
在这里,我无法理解如何在groovyutils中传递上下文以及所有要调用的类。
答案 0 :(得分:0)
我不确定我是否完全理解您的问题,但似乎您想要检查 SOAPUI 中的 SOAP响应,但使用< em> SOAPUI jar不是吗?
如果您只想在回复中执行一些assert
,那么我建议您避免使用GroovyUtils
。只需使用XmlSlurper
来解析响应,然后从xml节点获取所需的值并执行asserts
。
由于你的 Groovy 代码调用了服务并且缺少响应,我只是使用XmlSlurper
向您展示一个可能的示例:
def response = '''<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope/">
<soap:Body>
<myResponse>
<someNode>myText</someNode>
</myResponse>
</soap:Body>
</soap:Envelope>'''
def xml = new XmlSlurper().parseText(response)
// find the <someNode> element
def someNode = xml.'**'.find { it.name() == 'someNode' }
// check that the <someNode> has a value equals of 'myText'
assert someNode.text() == 'myText'
希望它有所帮助,