如何實現從登錄接口響應數據中提取JSESSIONID


  通過調用接口,對服務器產生壓力,單接口測試,會遇到響應數據返回的是要求先登錄。這是我們在調用這個接口時,根據業務邏輯,必須先登錄才可以,比如:提交訂單,那么就需要先獲取用戶登錄的JSESSIONID,然后再把該JSESSIONID作為提交訂單接口的請求頭信息。

下面詳細介紹下,在jmeter上如何實現提取登錄JSESSIONID。有兩種方法:

方法一、用正則表達式提取器從登錄的響應數據中提取JSESSIONID,然后在需要攜帶JSESSIONID的請求下面添加http cookie管理器,把提取到的JSESSIONID參數化進來

1、首先在登錄請求下添加后置處理器--正則表達式提取器,根據具體的響應數據,寫正則表達式去提取。

 

 提取到的結果是否正確,添加Debug PostProcessor,去調試。

正則表達式提取器頁面解釋:

引用名稱,就是后面要實際引用到的名稱,可以自己定義。

正則表達式的寫法,其中

. 表示匹配任意字符串

* 表示匹配任意多次

? 表示找到匹配項就停止

模板,就是上面的正則表達式中想要提取哪個內容(可能會有多個正則表達式),$1$表示提取第一個括號里的內容。

匹配數字,就是匹配到的第幾項,0代表隨機,-1代表匹配到的全部項,1代表匹配到的第一項,2代表匹配到的第二項,以此類推

2、在具體需要攜帶JSESSIONID的請求下面添加“HTTP Cookie 管理器”,然后把從登錄中獲取到的JSESSIONID參數化進來。如圖:

 

 這樣就可以成功的發送短信了,不會再出現先登錄的情況了。

方法二、不用提取器提取JSESSIONID,直接在線程組下面添加 HTTP Cookie 管理器,但是需要在配置文件中把相關的那段代碼取消注釋,讓其起作用。

1、首先在配置文件中,把下面這句代碼的注釋去掉,保存文件,重啟jmeter.

 

 

2、在線程組下面,添加配置元件-http cookie管理器,就可實現。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM