在模拟服务的脚本调度中将数据从 SOAP 请求传递到 SOAP 响应
Passing data from SOAP request to SOAP response in Script Dispatch of Mock Service
我在 SoapUI
中使用 Script
Mock 服务 的分派
请求内容示例
<upload>
<uploadtext>This is my first upload text</uploadtext>
<uploadtext>second upload text</uploadtext>
</upload>
我的要求是将相同的信息传递给我的回复
<upload>
<uploadtext>${uploadText1}</uploadtext>
<uploadtext>${uploadText2}</uploadtext>
</upload>
我正在使用 SoapUI
并尝试使用 groovy 脚本来实现。我是groovy的新手,请让我知道是否有任何其他简单的方法可以完成。
这是我目前尝试过的方法。
import javax.xml.xpath.*
import groovy.xml.StreamingMarkupBuilder
import groovy.lang.Binding
import groovy.lang.Script
def util = new com.eviware.soapui.support.GroovyUtils(context)
def xml = new XmlSlurper().parseText(mockRequest.requestContext)
def uploadText1 = xml.body.upload.uploadtext[0]
def uploadText2 = xml.body.upload.uploadtext[1]
//above uploadText1 and uploadText2 are storing values from my request
//however I am struggling to assign these values to response
context.setProperty("UploadText", uploadText1)
context.setProperty("UploadText", uploadText2)
无法看到我的回复与请求相同
感谢任何帮助。
谢谢。
这是因为您没有将所需的属性添加到上下文中。
更改以下语句。
发件人:
context.setProperty("UploadText", uploadText1)
context.setProperty("UploadText", uploadText2)
收件人:
context.uploadText1 = uploadText1
context.uploadText2 = uploadText2
顺便提一下其他的建议(如果没别的办法在Script
Dispatch:
- 不需要任何
import
声明
- 不需要声明
def util
我在 SoapUI
中使用Script
Mock 服务 的分派
请求内容示例
<upload>
<uploadtext>This is my first upload text</uploadtext>
<uploadtext>second upload text</uploadtext>
</upload>
我的要求是将相同的信息传递给我的回复
<upload>
<uploadtext>${uploadText1}</uploadtext>
<uploadtext>${uploadText2}</uploadtext>
</upload>
我正在使用 SoapUI
并尝试使用 groovy 脚本来实现。我是groovy的新手,请让我知道是否有任何其他简单的方法可以完成。
这是我目前尝试过的方法。
import javax.xml.xpath.*
import groovy.xml.StreamingMarkupBuilder
import groovy.lang.Binding
import groovy.lang.Script
def util = new com.eviware.soapui.support.GroovyUtils(context)
def xml = new XmlSlurper().parseText(mockRequest.requestContext)
def uploadText1 = xml.body.upload.uploadtext[0]
def uploadText2 = xml.body.upload.uploadtext[1]
//above uploadText1 and uploadText2 are storing values from my request
//however I am struggling to assign these values to response
context.setProperty("UploadText", uploadText1)
context.setProperty("UploadText", uploadText2)
无法看到我的回复与请求相同
感谢任何帮助。
谢谢。
这是因为您没有将所需的属性添加到上下文中。
更改以下语句。
发件人:
context.setProperty("UploadText", uploadText1)
context.setProperty("UploadText", uploadText2)
收件人:
context.uploadText1 = uploadText1
context.uploadText2 = uploadText2
顺便提一下其他的建议(如果没别的办法在Script
Dispatch:
- 不需要任何
import
声明 - 不需要声明
def util