Jmeter中參數(shù)的傳遞

背景

在平時做接口測試的時候,經(jīng)常會遇到上一個接口的response中的某一個元素,是下一個接口的參數(shù)。
如:

  • 新增一個訂單,返回一定訂單ID,下一個接口對這個訂單進行修改,需要傳入上一個訂單的ID
  • 登陸接口返回的一個值str,需要在后續(xù)的接口中作為參數(shù)傳入
    等等,場景大同小異。
    概括起來就是參數(shù)的傳遞。
    這種平時我們寫腳本,寫代碼相對比較容易實現(xiàn),可是如果在Jmeter中應(yīng)該怎么解決呢?

后置處理器

整體思路和我們寫代碼差不多,即:

  • 1.找到這個參數(shù)
  • 2.把它賦值給一個變量a
  • 3.后續(xù)接口需要用到,傳入這個變量a

簡單的實踐

如目前我們一個接口,返回內(nèi)容如下:


image.png

需求:把code和msg提取出來,傳給下一個接口使用

Regular Expression Extrator

這邊可以用Jmeter 的Regular Expression Extractor 來解決
在這個http request 請求后,掛在一個Regular Expression Extractor,其打開后頁面如下:


image.png

field to check: 需要你自己選定是對response的內(nèi)容還是頭,還是url進行抓取。

Name of created variable: 抓取出來的變量名稱,這邊自行命名

Regular expression: 這個是最重要的?。。≌齽t表達式就寫在這里。 正則表達式的正確與否,是你抓取的關(guān)鍵,如果正則寫錯了,參數(shù)就無法抓取出來了。
這邊可以加上Debug Sampler,打印抓取的參數(shù),以便修改正則

Template: 提取正則表達式里面的內(nèi)容,通常我們只提取一個字串,所以通常都是1

Match No: 匹配的數(shù)字, 通常我們只提取一個字串,一般寫1。

Default Value: 缺省值或默認值,用于沒有抓取到值時的處理。

這樣通過 ${var}的方式,把變量寫入request里面

如上所示,這樣就把status給提起出來


image.png

點擊 view result tree中的結(jié)果,點擊Debug Sampler可以看到我們抓取的數(shù)字是否正確

JSON Extrator

類似還有 Json Extrator,整體接口和上面相似,提取的部分換成了JSONPath的語法,相對可能更加簡單一點
如圖,這邊我提取msg的內(nèi)容


image.png

下面我把上面提取的兩個參數(shù),同時傳遞給百度


image.png

image.png

從結(jié)果數(shù)中可以看出,兩個參數(shù) waiqin_status和waiqin_msg均傳遞成功。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容