如何使用JMeter JSON Extractor提取JSON响应中字段的前3个字符
解决方案
方法1:JSONPath直接截取(适配支持字符串函数的JSONPath实现)
如果你使用的JMeter版本搭载支持字符串操作的Jayway JSONPath实现,直接修改JSONPath Expression配置为:
$..Country.substring(0,3)
即可直接返回截取后的前3位字符,无需额外后续处理。
方法2:提取后用JMeter函数截取(全版本通用)
如果你的环境不支持JSONPath字符串函数,按以下步骤操作:
- 先使用你原有配置
$..Country提取Country字段值,假设你设置的提取结果变量名为extracted_country - 在需要使用该值的位置,调用JMeter内置的
__substring函数截取前3位,写法为:${__substring(${extracted_country},0,3,)}
如果存在多个匹配结果,取第n个结果的写法为${__substring(${extracted_country_${n}},0,3,)},比如取第一个匹配结果将n替换为1,取第二个替换为2即可。
提示:如果JSON Extractor勾选了「Compute concatenation var」选项,所有匹配结果拼接后的变量会自动带上
_ALL后缀,对应截取写法为${__substring(${extracted_country_ALL},0,3,)}
内容的提问来源于stack exchange,提问作者Kumar
相关产品推荐
相关产品推荐

