【发布时间】:2020-12-25 18:15:02
【问题描述】:
我对脚本很陌生。我已经搜索了很长时间,并在这一点上卡住了。 我正在尝试使用 csv 文件中的变量在 Jmeter JSR223 PreProcessor 上创建一个 json 数组以在 Jmeter 上发布。
json结构是;
[
{
"id": "${FacId}",
"name": "${Name}",
"type": "Facility"
}
]
我可以从 csv 读取变量并将 id 和 name 设置为数组使用;
def builder = new groovy.json.JsonBuilder()
@groovy.transform.Immutable
class BSO{
String id
String name
}
def units = new File("/Users/gulcei/Documents/TPTest/test.csv")
.readLines()
.collect { line ->
new BSO (line.split(",")[0], line.split(",")[1]) }
builder(
units.collect(),
type: "Facility"
)
log.info(builder.toPrettyString())
vars.put("payload", builder.toPrettyString())
但其余的值不在数组中,它返回为;
[
{
"type": "Facility"
},
[
{
"id": "id1",
"name": "Facility1"
},
{
"id": "id2",
"name": "Facility2"
}
]
]
还有一件事;如果我尝试添加一个包含两个组件的值;
[
{
"id": "${FacId}",
"name": "${Name}",
"type": "Facility",
"location": {
"latitude": 0,
"longitude": 0
}
}
]
我收到“意外令牌”错误。我想我试图把它放在错误的格式中。
你能帮我处理一下吗?
提前谢谢...
【问题讨论】: