JMeter--JSON提取器
阿新 • • 發佈:2021-07-22
一、JSON提取器
該元件使您可以執行JSON文件的驗證。JSON PostProcessor使您可以使用JSON-PATH語法從JSON響應中提取資料。跟正則表示式提取器很相似。她必須作為HTTP Sample的子項或具有響應的任何其他取樣器。她允許您以非常簡單的方式提取文字內容。
JSON提取器跟前面講的JSON斷言很相似。
新增》後置處理器》JSON提取器
JSON提取器頁面的解釋:
名稱:自己命名即可
註釋:自己命名即可
Apply to:
- 名稱:自行定義,就是節點的名稱
- 註釋:節點的註釋,容易理解的解釋
- Apply to:斷言可以應用於主樣本,子樣本或者兩者。預設斷言是第二個,斷言應用於主樣本。
- Main sample and sub-samples:主樣本和子樣本
- Main sample only:僅主樣本
- Sub-samples only:僅子樣本
- JMeter Variable Name to use:JMeter使用變數名字,斷言將應用於命名變數的內容
Names of created variables:變數名稱,比如:id,後續可以引用這個名稱
JSON Path Expressions:JSON元素的路徑
Match No. (0 for Random):0代表隨機,就是JSON路徑取出來的可能有多個值,0就是隨機取一個,要取第一個,那麼就填1即可。-1代表取所有
Compute concatenation var:如果找到許多結果,外掛將會使用’,’連線起來
Default Values:預設值
JSON提取器分析:
- 返回的資料必須的JSON格式,否則會解析失敗。
- 他將JsonPath語法搜尋指定的路徑,找不到路徑,則會失敗。http://goessner.net/articles/JsonPath/這個網址去學習JSON語法。
舉例:取code值
二、Json提取最後一組資料
新建後的屬性介面響應回來一般放在第一位或者最後一位,第一位取比較方便,如下圖:
1. 取第一個分類的id
$.[0].children[0].children[0].id
2. 那麼取最後一個分類中的二級分類的id:
$.[0].children[-1:].children[0].title