如何在Jmeter中使用groovy在json中传递字符串数组
我想使用groovy在Jmeter中将下面提到的json作为原始主体传递。除了过滤器阵列之外,其他一切都正常工作。如何使用groovy在Jmeter中传递字符串数组 必需的Json如何在Jmeter中使用groovy在json中传递字符串数组,json,groovy,jmeter,performance-testing,Json,Groovy,Jmeter,Performance Testing,我想使用groovy在Jmeter中将下面提到的json作为原始主体传递。除了过滤器阵列之外,其他一切都正常工作。如何使用groovy在Jmeter中传递字符串数组 必需的Json { "Request": { "request_id": "1121589496445226106", "request_timestamp": "14122017140114", "source_node": "CRM", "dataset":
{
"Request": {
"request_id": "1121589496445226106",
"request_timestamp": "14122017140114",
"source_node": "CRM",
"dataset": {
"param": [
{
"id": "service_id",
"value": "97694010132"
},
{
"id": "entity_id",
"value": "1"
}
],
"filters": [
"service",
"account",
"profile"
]
}
}
}
代码示例是
import groovy.json.JsonBuilder
def json = new JsonBuilder()
class Tag {String tag; String tagName }
List<Tag> tagsList = new ArrayList<>();
tagsList.add(new Tag(tag:vars.get("serviceid"), tagName:"service_id"))
tagsList.add(new Tag(tag:"1", tagName:"entity_id"))
json {
"Request"
{
request_id "1121589496445226106"
source_node "CRM"
request_timestamp "14122017140114"
"dataset"
{
param tagsList.collect { tag ->
["id" : tag.tagName,
"value": tag.tag]
}
}
}
}
sampler.addNonEncodedArgument("",json.toPrettyString(),"")
sampler.setPostBodyRaw(true)
import groovy.json.JsonBuilder
def json=new JsonBuilder()
类标记{字符串标记;字符串标记名}
List tagsList=new ArrayList();
tagsList.add(新标记(标记:vars.get(“serviceid”),标记名:“service\u id”))
tagsList.add(新标记(标记:“1”,标记名:“实体id”))
json{
“请求”
{
请求id“1121589496445226106”
源节点“CRM”
请求时间戳“14122017140114”
“数据集”
{
param tagsList.collect{tag->
[“id”:tag.tagName,
“值”:tag.tag]
}
}
}
}
sampler.addNonEncodedArgument(“,json.toPrettyString(),”)
采样器。setPostBodyRaw(真)
我想传递json中的过滤器数组。使用下面的代码可以获得所需的json
import groovy.json.JsonBuilder
def json = new JsonBuilder()
class Tag {String tag; String tagName }
List<Tag> tagsList = new ArrayList<>();
tagsList.add(new Tag(tag:vars.get("serviceid"), tagName:"service_id"))
tagsList.add(new Tag(tag:"1", tagName:"entity_id"))
json {
"Request"
{
request_id "1121589496445226106"
source_node "CRM"
request_timestamp "14122017140114"
"dataset"
{
param tagsList.collect { tag ->
["id" : tag.tagName,
"value": tag.tag]
}
filters'service','account','profile'
}
}
}
sampler.addNonEncodedArgument("",json.toPrettyString(),"")
sampler.setPostBodyRaw(true)
import groovy.json.JsonBuilder
def json=new JsonBuilder()
类标记{字符串标记;字符串标记名}
List tagsList=new ArrayList();
tagsList.add(新标记(标记:vars.get(“serviceid”),标记名:“service\u id”))
tagsList.add(新标记(标记:“1”,标记名:“实体id”))
json{
“请求”
{
请求id“1121589496445226106”
源节点“CRM”
请求时间戳“14122017140114”
“数据集”
{
param tagsList.collect{tag->
[“id”:tag.tagName,
“值”:tag.tag]
}
筛选“服务”、“帐户”、“配置文件”
}
}
}
sampler.addNonEncodedArgument(“,json.toPrettyString(),”)
采样器。setPostBodyRaw(真)
Groovy不是Groovy!!