对等级别的jmeter json路径条件提取
我使用的是JMeterV2.13和jp@gc-JSON路径提取器 这是我的对等级别的jmeter json路径条件提取,jmeter,jsonpath,Jmeter,Jsonpath,我使用的是JMeterV2.13和jp@gc-JSON路径提取器 这是我的JSON示例: { “意见”:[{ “id”:9701, “名称”:“EBS:EAS:IDC(EAS MBT IDC)”, “canEdit”:没错, “sprintSupportEnabled”:true, “过滤器”:{ “id”:55464, “名称”:“EBS:EAS:IDC和oBill Boar过滤器”, “查询”:“项目=\”EBS:EAS:IDC\”, “所有者”:{}, “canEdit”:错误, “is
JSON
示例:
{
“意见”:[{
“id”:9701,
“名称”:“EBS:EAS:IDC(EAS MBT IDC)”,
“canEdit”:没错,
“sprintSupportEnabled”:true,
“过滤器”:{
“id”:55464,
“名称”:“EBS:EAS:IDC和oBill Boar过滤器”,
“查询”:“项目=\”EBS:EAS:IDC\”,
“所有者”:{},
“canEdit”:错误,
“isOrderedByRank”:没错,
“许可证条目”:[{
“价值观”:[{
“类型”:“与公众共享”,
“名称”:”
}]
}]
},
“董事会管理员”:{}
},
{}
]
}
是否可以提取视图[x].id
中存在的条目视图[x].filter.permissionEntries[*].values[*].type
等于与公众共享的
我该怎么做
谢谢JSON查询看起来是这样的(我承认我没有在JMeter中尝试过)
说明:
我们希望根($
)下有视图
,并且它有属性id
。其余部分(在[]
中)是根据预定义条件仅选择视图
项的条件。因此$.views[conditions].id
这种情况下的条件是一个接一个,但主要部分是:
- 我们将条件定义为过滤器
?(…)
- 我们要求筛选器在当前项(
@
)下查找特定的子项(.child
),子项可能有自己的条件([…]
)。因此@.child[条件]。这样我们就可以通过过滤器
,权限条目
,值
- 最后,我们进入字段
值
,并将其筛选为子类型
字段,该字段具有与公众共享的特定值。因此@.type==“与公众共享”
正如您看到的,它不是很直观,JSON路径有点有限。如果这是一个重复的问题,你的JSON更复杂,你可以考虑投资到脚本化的预处理器(类似于解释的。)。
$.views[?(@.filter[?(@.permissionEntries[?(@.values[?(@.type == "Shared with the public")])])])].id