常用的兩種方式,第二種容易上手
1、使用正則提取器
jmeter 如何將上一個請求的結果作為下一個請求的參數——使用正則提取器(http://www.cnblogs.com/0201zcr/p/5089620.html)
1、簡介

2)、創建一個獲取憑證的請求

4)、正則表達式提取器配置
- 引用名稱是下個請求將要引用到的變量名;
- 正則表達式是提取你想要內容的正則表達式,小括號()表示提取,也就是說對於你想要提取的內容需要用它括起來;
- 模板是使用提取到的第幾個值。因為可能有多個值匹配,所以要使用模板。從 1 開始匹配,依次類推。這里只有一個,所以填寫 $1$ 即可;
- 匹配數字表示如何取值。0 代表隨機取值,1 代表全部取值。這里只有一個,填 1 即可;
- 缺省值表示參數沒有取到值的話,默認給它的值。一般不填。
這個請求返回的數據如下:
{"message":"success","statusCode":200,"registerDay":"20","tokenId":"bf1017bc1bb495ae31764b306a3422885f5"}

6)、添加查看結果樹
7)、執行后,即可通過”查看結果樹“查詢
2、JSON Extractor
JMeter處理responses 的json(http://blog.csdn.net/lluozh2015/article/details/54097449)
對於請求1返回的結果,處理以后作為請求2的參數,JMeter提供了正則表達式提取器
如下:
這樣也可以通過正則表達式獲取responses的某個值
但是對於大部分請求返回的結果,都是json,有一個更方便使用的插件:JSON Extractor
不過得首先下載插件 https://jmeter-plugins.org/wiki/JSONPathExtractor/
下載后解壓以后將lib和lib/ext中的jar包放到安裝目錄對應位置,重啟即可
簡單介紹一下該插件怎么使用
該插件為:
Variable names : 名稱
JSONPath Expression:JSON表達式
Match Numbers:匹配哪個,可為空即默認第一個
Default Value:未取到值的時候默認值
比如某一請求的返回值為:{"statusCode":200,"data":{"userId":"4a2cbe616eb74f0d99190af072c8dea6","token":"37e7a9e198186f5a443e50e6138a5bd20bd"}}
這里因為返回的是json數據,$.data.token
,獲取token的值
但是有碰到一個坑
另外一個接口請求返回值為:{"statusCode":200,"data":[{"code":"407949","id":"aa477ad2085d492a99b877d14343d68d","name":"90一中4545"}]}
同樣,使用$.data.id
去提取id的值時,發現獲取到的數據為空
原來這個responses 的data為數組,故應為 $.data[0].id
提取第1個值
如下: