Jmeter入門(8)- Jmeter關聯
阿新 • • 發佈:2020-10-29
一、 關聯的定義
把一個請求之後返回的資料,作為另一個請求的引數。
二、 XPath關聯
XPath 是一門在 XML 文件中查詢資訊的語言
學習例子
1.訪問網易官網,獲取到title
2.將title值放入百度搜索框
前置條件
新增HTTP請求
位置:執行緒組 ==> 新增 ==> 取樣器 ==>HTTP請求
HTTP請求 ==> 網易首頁
HTTP請求 ==> 百度搜索
XPath使用場景
介面值為HTML或者XML格式時,使用XPath提取器
位置
配置XPath提取器
配置說明如下:
配置項 | 規則及含義 |
---|---|
Use Tidy | 當需要處理的頁面是XML或XHTML格式(例如,RSS返回 |
引用名稱 | 接收返回資料的變數名 |
XPath query | XPath表示式 |
匹配數字 | 0代表隨機取; -1表示取所有資料; 1表示取第一個 |
預設值 | 當沒有匹配資料時,顯示的內容 |
新增Debug Sampler
位置:執行緒組 ==> 新增 ==> 取樣器 ==> Debug Sampler
引用變數
在百度請求中引用title變數,百度搜索請求的引數如下:
引數 | 值 |
---|---|
wd | 搜尋的內容 |
tn | monline_4_dg(模擬http請求) |
因為百度不允許做壓測,所以新增tn引數
檢視請求是否正確-察看結果樹
總結
- 在請求結果為
HTML
XML
格式時,可以使用XPath提取器; - 在XPath提取器中,一定要勾選
use Tidy
; - 變數的引用,使用
${變數名}
; - 還可以將察看結果樹中的請求、響應資料的顯示型別設定為
XPath Teser
,再進行XPath query
(表示式)的設定。
三、 JSON關聯
學習例子:
1.查詢使用者資訊,獲取第一個使用者的id
2.根據id修改該使用者的資訊
使用場景
在介面返回資料為Json格式時,使用JSON提取器
位置
新增HTTP請求獲取JSON資料
配置JSON提取器
配置說明如下:
配置項 | 規則及含義 |
---|---|
Names of created variables | 接收返回資料的變數名 |
JSON path expressions | JSON提取器表示式,$.<獲取欄位的名字> |
Match No.(0 for Random) | 0代表隨機取; -1表示取所有資料; 1表示取第一個 |
Default Values | 當沒有匹配資料時,顯示的內容 |
新增Debug Sampler
位置:執行緒組 ==> 新增 ==> 取樣器 ==> Debug Sampler
引用變數
檢視請求是否正確-察看結果樹
總結
- 在請求結果為
JSON
格式時,可以使用JSON提取器; - 查詢JSON可以通過
$.<獲取欄位的名稱>
來獲取; - 可以將察看結果樹中的請求、響應資料的顯示型別設定為
JSON Path Teser
,再進行JSON Path Expression
的設定。
四、 正則表示式關聯
學習例子:(和JSON關聯使用的是同一個例子)
1.查詢使用者資訊,獲取第一個使用者的id
2.根據id修改該使用者的資訊
使用場景
任何資料形式都可以使用正則提取器
位置
新增HTTP請求獲取資料
配置正則表示式提取器
配置說明如下:
配置項 | 規則及含義 |
---|---|
引用名稱 | 接收返回資料的變數名 |
正則表示式 | 查詢連結 |
模板 | $1$,表示取第一組資料 |
匹配數字 | 0代表隨機取; -1表示取所有資料; 1表示取第一個 |
預設值 | 當沒有匹配資料時,顯示的內容 |
新增Debug Sampler
位置:執行緒組 ==> 新增 ==> 取樣器 ==> Debug Sampler
引用變數
檢視請求是否正確-察看結果樹
總結
-
任何形式的資料都可以使用正則表示式;
-
正則表示式提取器主要用於篩選和過濾資料;