背景:
多個接口串起來測試,形成場景化測試。需要把
上一個接口的返回值,當(dāng)下一個接口的入?yún)?shù)。
準(zhǔn)備工作:
需要下載插件,下載地址為:
https://jmeter-plugins.org/wiki/JSONPathExtractor/
下載后解壓以后將lib和lib/ext中的jar包放到
安裝目錄對應(yīng)位置,重啟即可。
Json 格式的數(shù)據(jù)流中抽取某些特定的數(shù)據(jù),數(shù)據(jù)格式如下:
{
"name":"Simpsons family",
"members":[
{"firstName":"Homer", "lastName":"Simpson"},
{"firstName":"Marge", "lastName":"Simpson"},
{"firstName":"Bart", "lastName":"Simpson"},
{"firstName":"Lisa", "lastName":"Simpson"},
{"firstName":"Maggie", "lastName":"Simpson"}
]
}
正則表達(dá)式提取:
"firstName":"(.+?)"
$1$ 來作為模板,而 3 則會返回第三個數(shù)據(jù)。
JMeter JSON 插件
$.members[2].firstName
在 JMeter 中,只需要從 PostProcessor 菜單中打開 JSON Path Extractor
然后輸入變量名與默認(rèn)值即可,如下所示:
JSONPath 表達(dá)式較短并且易于閱讀,能夠有效提高測試腳本的易維護(hù)性
BeanShell Post Processor
標(biāo)準(zhǔn)的 Java 語法來處理 Json 數(shù)據(jù),使用方法如下圖所示: