JMeter JSON 提取器的正则表达式
Regex for JMeter JSON Extractor
我正在使用 JMeter 来验证一些 HTTPS 请求,为此,我正在使用一个 JSON 提取器,我想从我得到的 JSON 响应中提取数据。因此,从下面的有效负载中,我想从 service_name 等于“Japan-1-3-12_service”的任何资源中提取 oper_state。
{
"resource":[
{
"id":"de04c6b1-a5a3-11ec-a02b-765e38f104a5-19",
"name":"Tokyo-1-1-10",
"service_name":"Tokyo-1-1-10_service",
"oper_state":"UP",
"type":"admin"
},
{
"id":"me05c6b1-a903-11ec-a02b-764313f104a5-19",
"name":"Japan-1-3-12",
"service_name":"Japan-1-3-12_service",
"oper_state":"UP",
"type":"admin"
},
{
"id":"5e04c691-a5a3-11ec-a02b-765e38f3q4a5-19",
"name":"France-1-1-3",
"service_name":"France-1-1-3_service",
"oper_state":"DOWN",
"type":"admin"
}
]}
我正在使用“$.resource[?(@.service_name==Japan-1-3-12_service”)].operational_state”,但没有在变量中得到任何输出。
为什么在 JSON 响应中到处都是 oper_state
,却使用 operational_state
?
只需将您的 JSON Path query 更改为
$.resource[?(@.service_name=="Japan-1-3-12_service")].oper_state
它应该会按预期开始工作
更多信息:JMeter's JSON Path Extractor Plugin - Advanced Usage Scenarios
我正在使用 JMeter 来验证一些 HTTPS 请求,为此,我正在使用一个 JSON 提取器,我想从我得到的 JSON 响应中提取数据。因此,从下面的有效负载中,我想从 service_name 等于“Japan-1-3-12_service”的任何资源中提取 oper_state。
{
"resource":[
{
"id":"de04c6b1-a5a3-11ec-a02b-765e38f104a5-19",
"name":"Tokyo-1-1-10",
"service_name":"Tokyo-1-1-10_service",
"oper_state":"UP",
"type":"admin"
},
{
"id":"me05c6b1-a903-11ec-a02b-764313f104a5-19",
"name":"Japan-1-3-12",
"service_name":"Japan-1-3-12_service",
"oper_state":"UP",
"type":"admin"
},
{
"id":"5e04c691-a5a3-11ec-a02b-765e38f3q4a5-19",
"name":"France-1-1-3",
"service_name":"France-1-1-3_service",
"oper_state":"DOWN",
"type":"admin"
}
]}
我正在使用“$.resource[?(@.service_name==Japan-1-3-12_service”)].operational_state”,但没有在变量中得到任何输出。
为什么在 JSON 响应中到处都是 oper_state
,却使用 operational_state
?
只需将您的 JSON Path query 更改为
$.resource[?(@.service_name=="Japan-1-3-12_service")].oper_state
它应该会按预期开始工作
更多信息:JMeter's JSON Path Extractor Plugin - Advanced Usage Scenarios