? ? ? ?有時候多個請求是層級關(guān)系耀销,即第2個請求的參數(shù),是第1個請求的返回結(jié)果铲汪。對于jmeter3熊尉,提供了JSON Extractor,可以提取相應(yīng)的返回值掌腰。jmeter2則無此功能狰住,需要單獨(dú)下載插件https://jmeter-plugins.org/wiki/JSONPathExtractor/
例如需求如下:
1. code生成:
http://xx/oauth/test/code
返回結(jié)果:{"code":"ryAoo-74qDViz7JdPJnZdbjCU1FQ4qHsj2HNwZhRKbNmQBM4UtdMETryCyZmWtdv2vtl-RHVE3E"}
2.根據(jù)code獲取access_token
http://xx/oauth/access_token
Post json: {"client_id":"01234567","client_secret":"0123456789012345","code":"第一步的code","grant_type":"authorization_code"}
返回結(jié)果:{"access_token":"xxxxxxxxxxxxxx"}
3.根據(jù)獲取用戶信息
http://xx/oauth/api/userinfo
Post json:{"access_token":"xxxxxxxxxxxxxx"}
返回結(jié)果:{"mobile":"137xxxxxx", "nickname":"test..x"}
測試思路:
1.配置線程組--事務(wù)控制器--簡單控制器--http請求,獲得登陸code
http請求:https://XXX/oauth/test/code
事務(wù)控制器齿梁,選擇父節(jié)點(diǎn)催植,方便樹形結(jié)果分類查看
2.添加后置處理器--JSON Extractor
注:
Variable names : 名稱
JSONPath Expression:JSON表達(dá)式
Match Numbers:匹配哪個肮蛹,可為空即默認(rèn)第一個
Default Value:未取到值的時候默認(rèn)值
3.設(shè)置請求2,把請求1的返回結(jié)果作為請求2 的參數(shù)
https://xx/oauth/access_token?client_id=01234567&client_secret=0123456789012345&code=${code}&grant_type=auth_code
采用post方式
常見問題:
http://www.cnblogs.com/luihengk/p/7000486.html