我是Jmeter的新手,搜索了很多内容,但找不到解决方案。感谢您的帮助。谢谢。
问题- 在我的http请求中,我有以下内容 我的实际要求是
{
"Summary": {
"source": {
"Name": "Phones",
"dataSource": "Oracle",
"dbType": "${Value}",
"sid": "${sUsername}",
"spswd": "${sPassword}",
"aut": "${win}",
"PrjName": "${sourceprojectName}"
},
"Destination": {
"dataSource": "SQL",
"projectName": "${destprojectName}",
"server": "${urlValue}"
"destUsrName": "${dUsername}",
"destPswd": "${dPassword}",
},
"Notifiction": "True",
"Time": "dd:mm:yy",
"Config": true,
"Properties": [
{
"type": "iPhone",
"ids": [
{
"id": "f132d",
"Guid_id": null
},
{
"id": "6332569",
"Guid_id": null
},
{
"id": "5b55d2f",
"Guid_id": null
},
{
"id": "81f1330",
"Guid_id": null
}
]
}
]
},
"Execute": true
}
请求中的ID是动态的,因此我想对其进行参数化。
使用Json提取器,我从另一个响应中获得了这些ID。
所有这些ID都在数组中。 id=["f132d","6332569","5b55d2f","81f1330"]
现在我不知道如何将这些ID放入我的请求正文中。请协助
答案 0 :(得分:-1)
您可以如下生成所需的请求正文:
将以下代码放入“脚本”区域:
def ids = new groovy.json.JsonSlurper().parseText(vars.get('id'))
def builder = new groovy.json.JsonBuilder()
builder(Properties:[ [type: "iPhone", ids: ids.collect {[id: it,"Guid_id": null]}]])
sampler.getArguments().removeAllArguments()
sampler.addNonEncodedArgument('',builder.toPrettyString(),'')
sampler.setPostBodyRaw(true);
更多信息: