溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Jmeter中的BeanShell腳本怎么用

發(fā)布時間:2021-12-17 14:10:42 來源:億速云 閱讀:188 作者:小新 欄目:開發(fā)技術(shù)

小編給大家分享一下Jmeter中的BeanShell腳本怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

在利用jmeter進(jìn)行接口測試或者性能測試的時候,我們需要處理一些復(fù)雜的請求,此時就需要利用beanshell腳本了,BeanShell是一種完全符合Java語法規(guī)范的腳本語言,并且又擁有自己的一些語法和方法,所以它和java是可以無縫銜接的。beanshell由于內(nèi)置了一些特有的變量,沒法在一些集成代碼工具上去調(diào)試。

學(xué)了Java的一些基本語法后,就可以來在Jmeter中寫寫B(tài)eanShell腳本了。

直接在線程組下創(chuàng)建一個BeanShell取樣器,然后在腳本區(qū)寫java代碼:

Jmeter中的BeanShell腳本怎么用

寫了個循環(huán),執(zhí)行后在這里看不到,要在jmeter.bat的windows批處理里看到:

Jmeter中的BeanShell腳本怎么用

JMeter在它的BeanShell中內(nèi)置了變量,用戶可以通過這些變量與JMeter進(jìn)行交互:

1、log:寫入信息到j(luò)meter.log文件,使用方法:log.info(“hahahahahahah”);

2、vars:操作jmeter變量,這個變量實際引用了JMeter線程中的局部變量容器(本質(zhì)上是Map),它是測試用例與BeanShell交互的橋梁,常用方法:

    a) vars.get(String key):從jmeter中獲得變量值

    b) vars.put(String key,String value):數(shù)據(jù)存到j(luò)meter變量中

添加日志查看:

Jmeter中的BeanShell腳本怎么用

使用vars:

Jmeter中的BeanShell腳本怎么用

在線程組2里面去訪問vars變量,輸出null,可見vars確實是個局部變量:

Jmeter中的BeanShell腳本怎么用

3、props:操作jmeter屬性,該變量引用了JMeter的配置信息,可以獲取Jmeter的屬性,它的使用方法與vars類似,但是只能put進(jìn)去String類型的值,而不能是一個對象。對應(yīng)于java.util.Properties。

props的全局性:

Jmeter中的BeanShell腳本怎么用

4、prev:獲取前面的sample返回的信息,常用方法:

    a)getResponseDataAsString(): 獲取響應(yīng)信息;

    b) getResponseCode(): 獲取響應(yīng)代碼;

先發(fā)個接口請求,然后prev獲取返回信息:

Jmeter中的BeanShell腳本怎么用

自定義函數(shù):使用Java自定義函數(shù)來處理特定的邏輯,結(jié)合BeanShell的內(nèi)置對象進(jìn)行變量的存取,提高腳本的靈活性。

寫了個自定義的靜態(tài)函數(shù),實現(xiàn)的是整數(shù)的累加:

Jmeter中的BeanShell腳本怎么用

發(fā)現(xiàn)報錯,原來是函數(shù)的返回值是int類型的,而log.info()里面要的是String。這里把int類型的result轉(zhuǎn)換為string有三種方法:
1、String.valueOf(result)

2、Integer.toString(result)

3、result+""

任選一個即可。

Jmeter中的BeanShell腳本怎么用

引用外部java文件:在BeanShell中通過source("代碼路徑")方法引入Java文件,然后調(diào)用方法和java一樣,new一個對象,通過

對象調(diào)用里面的方法。

寫個靜態(tài)方法,保存為Test.java文件,放在D盤下:

Jmeter中的BeanShell腳本怎么用

然后在BeanShell里引用Test.java,調(diào)用函數(shù),傳參100,日志輸出:

Jmeter中的BeanShell腳本怎么用

引用外部jar包

首先打包:

1、把當(dāng)前的Test作為運行文件,先運行一遍。

Jmeter中的BeanShell腳本怎么用

2、右鍵項目名--Export--Runnable JAR file.

Jmeter中的BeanShell腳本怎么用

3、在Launch找到運行文件,放到j(luò)meter安裝目錄下lib/ext下。

Jmeter中的BeanShell腳本怎么用

4、在Jmeter的BeanShell里導(dǎo)包,調(diào)用方法。

Jmeter中的BeanShell腳本怎么用

這里我運行報錯了,說方法找不到,摸索良久后嘗試在測試計劃里添加一下jar包,結(jié)果成功了。

Jmeter中的BeanShell腳本怎么用

Jmeter中的BeanShell腳本怎么用

以上是“Jmeter中的BeanShell腳本怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI