问题描述
我是 Jmeter 的初学者。我需要在 Beanshell 后处理器中拆分一个字符串。我的字符串包含:
[{name=Rose,id=2,Job=manag,AGE=45},{name=Mary,id=3,Job=eng,AGE=67},{name=Terese,id=4,Job=exe,AGE=20},{name=George,id=5,AGE=50},{name=Mathew,id=6,Job=cwit,AGE=30},{name=jiss,id=7,Job=bd,AGE=49},{name=Rose,id=8,AGE=36}]
如何拆分 beanshell 中的每个值,例如:
- [Rose,2,manag,45]
- [Mary,3,eng,67] etc.
解决方法
首先,我怀疑您根本不应该使用 Beanshell,since JMeter 3.1 it's recommended to go for JSR223 Test Elements and Groovy language 用于编写脚本
您确定该字符串正是这种格式吗?我之所以这么问是因为它看起来像是 JSON,如果是这种情况,您会得到如下响应:
[
{
"name": "Rose","id": 2,"Job": "manag","AGE": 45
},{
"name": "Mary","id": 3,"Job": "eng","AGE": 67
},{
"name": "Terese","id": 4,"Job": "exe","AGE": 20
},{
"name": "George","id": 5,"AGE": 50
},{
"name": "Mathew","id": 6,"Job": "cwit","AGE": 30
},{
"name": "jiss","id": 7,"Job": "bd","AGE": 49
},{
"name": "Rose","id": 8,"AGE": 36
}
]
您可以使用 JSR223 PostProcessor 和以下 Groovy 代码:
new groovy.json.JsonSlurper().parse(prev.getResponseData()).each { entry ->
log.info(entry as String)
}
演示:
更多信息: