JMeter JSON Extractor提取随机完整集合问题咨询
解决JSON Path随机提取完整集合的问题
- 问题出在你当前用的表达式
$.data.set[*].key1;$.data.set[*].key2,它是分别把所有集合里的key1和key2单独提取成两个独立列表,随机取值时自然会出现跨集合的组合。 - 正确思路是先随机选中整个集合项,再从中提取对应的key1和key2,确保两者来自同一集合。
- 具体实现分两种情况:
- 如果你的JSON Path工具支持随机索引(比如部分接口测试工具),直接用
$.data.set[random()],它会直接返回一个随机的完整集合对象,里面的key1和key2必然是配对的。 - 如果需要单独提取两个字段,先获取集合长度
$.data.set.length,生成一个0到长度减1的随机数n,再用$.data.set[n].key1和$.data.set[n].key2提取,这样两个字段就来自同一个集合项。
- 如果你的JSON Path工具支持随机索引(比如部分接口测试工具),直接用
- 用你提供的JSON数据测试,正确表达式返回的随机结果只会是以下两种之一:
或者{ "key1": "123", "key2": "123" }{ "key1": "abc", "key2": "def" }
内容的提问来源于stack exchange,提问作者cc96ai
相关产品推荐
相关产品推荐

