JMeter- 从 JSON 响应中提取多个变量并将其保存在 CSV 文件中
JMeter- extract multiple variables from JSON response and save it in CSV file
我已经看到几个与此相关的 post,但我找不到与我的情况最接近的匹配项,因此 post 将其作为一个新问题。
我的回复如下JSON
{
"myshop": [
{
"url": "test1",
"hits": 1000
},
{
"url": "test2",
"hits": 2000
},
{
"url": "test3",
"hits": 3000
}
]
}
我想提取每个 URL 及其对应的命中,并将其存储在 CSV 文件中,在这种情况下,CSV 文件中有 3 行
test1,1000
test2,2000
test3,3000
但是没能成功。我的 JSON 提取器:
$..url;$..hits with match number as -1
但它会选择所有 URL,但会选择任何随机命中值。
此外,我能够为每个控制器使用一个变量,从 JSON 中提取,使用 BeanShell post 处理器成功将其写入 CSV,但同样不适用于这种情况。任何指针都会有所帮助。
我确实检查了 JSR223 Post 处理器的答案很少,但没有涵盖这个问题场景。
提前致谢
- 添加 JSR223 PostProcessor 作为上述 returns JSON
请求的子项
将以下代码放入"Script"区域:
new groovy.json.JsonSlurper().parse(prev.getResponseData()).myshop.each { entry ->
new File('entries.csv') << entry.get('url') << ',' << entry.get('hits') << System.getProperty('line.separator')
}
就是这样,一旦你 运行 你的测试 entries.csv
文件将在 JMeter 的 "bin" 文件夹中生成,其中包含所需格式的信息。
参考文献:
另请注意,如果一次最多使用 1 个线程执行代码,该方法将可靠地工作(即确保使用 Critical Section Controller). Otherwise consider switching to Sample Variables and Flexible File Writer
我已经看到几个与此相关的 post,但我找不到与我的情况最接近的匹配项,因此 post 将其作为一个新问题。
我的回复如下JSON
{
"myshop": [
{
"url": "test1",
"hits": 1000
},
{
"url": "test2",
"hits": 2000
},
{
"url": "test3",
"hits": 3000
}
]
}
我想提取每个 URL 及其对应的命中,并将其存储在 CSV 文件中,在这种情况下,CSV 文件中有 3 行
test1,1000
test2,2000
test3,3000
但是没能成功。我的 JSON 提取器:
$..url;$..hits with match number as -1
但它会选择所有 URL,但会选择任何随机命中值。 此外,我能够为每个控制器使用一个变量,从 JSON 中提取,使用 BeanShell post 处理器成功将其写入 CSV,但同样不适用于这种情况。任何指针都会有所帮助。 我确实检查了 JSR223 Post 处理器的答案很少,但没有涵盖这个问题场景。
提前致谢
- 添加 JSR223 PostProcessor 作为上述 returns JSON 请求的子项
将以下代码放入"Script"区域:
new groovy.json.JsonSlurper().parse(prev.getResponseData()).myshop.each { entry -> new File('entries.csv') << entry.get('url') << ',' << entry.get('hits') << System.getProperty('line.separator') }
就是这样,一旦你 运行 你的测试
entries.csv
文件将在 JMeter 的 "bin" 文件夹中生成,其中包含所需格式的信息。
参考文献:
另请注意,如果一次最多使用 1 个线程执行代码,该方法将可靠地工作(即确保使用 Critical Section Controller). Otherwise consider switching to Sample Variables and Flexible File Writer