接口測試工具-Jmeter使用筆記(九:跨線程組傳遞變量)


使用場景:

請求API需要授權令牌,但是授權令牌只需要獲取一次,即可調用服務器上其他業務接口。

所以我想要把授權操作放在單獨的一個線程,業務流放在其他線程。

這就需要我把從授權線程獲取的令牌傳入業務流線程。

 

解決方法———后置處理器Beanshell PostProcessor

1、首先選擇“獲取token”線程組:添加正則表達式,提取出token的值(不會使用正則表達式的同學請查閱博主之前Jmeter相關文章)

2、在“獲取token”線程組:添加后置處理器BeanShell PostProcessor

Parameters:引用正則表達式提取的變量${token}

Script:具體beanshell語法大家可去查看相關資料,這里很簡單,一條語句就搞定。

    意思是把獲取的變量${token}設置為全局變量,並以新的名字newtoken來進行引用。

3、在“業務流”線程組引用全局變量newtoken

引用方式是${__P(newtoken,)},注意花括號中是兩個下划線,newtoken后還跟一個逗號,不要寫漏了。

 

至於我在這個線程組里面加的固定定時器,是因為如果不加定時器,兩個線程是同步執行的,會發生token值還沒有獲取到就進行業務流的接口請求,造成請求返回失敗。

4、執行,查看結果

獲取到的token值為上圖所示

引用成功~

 


免責聲明!

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



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