我是Groovy脚本的新手,已经在groovy脚本中获得了请求并获得了JSON响应:
{
Id: 12,
Cntid: 3,
MrId: 1257
Details: [{
stid: 224
trqty: 2,
Soh: 22
}, {
stid: 224,
trqty: 2,
Soh: 27
}, {
stid: 2341,
trqty: 21,
Soh: 89
}
]
}
我从中检索数据并创建一个后期操作请求:
{
Id: 12,
Cntid: 3
Details: [{
stid: 224
trqty: 2
}, {
stid: 224,
trqty: 2
}, {
stid: 2341,
trqty: 21
}
]
}
答案 0 :(得分:1)
从有效的JSON开始是有帮助的:你的有效载荷中缺少一些逗号。
假设您只想从响应中删除一些属性,可以使用:
import groovy.json.JsonSlurper
// Get the existing response
def newRequest = new groovy.json.JsonSlurper().parseText( [your JSON string] )
// Remove the unwanted attributes
newRequest.remove('MrId')
newRequest.'Details'.each {
it.remove('Soh')
}
// Add new attributes
newRequest.put('status' , 'oma');
newRequest.'Details'.each {
it.put('active','y')
}
如果您想继续使用Groovy,可以使用https://github.com/jwagenleitner/groovy-wslite之类的库来构建和发送下一个REST请求。
但是,为什么不使用soapUI来做到这一点:
// Get the next test step in a test case and set the request
def secondREST = context.testCase.getTestStepByName("secondREST")
secondREST.httpRequest.requestContent = newRequest
// Run it
secondREST.run(testRunner, context)