溫馨提示×

溫馨提示×

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

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

jmeter學習指南之Beanshell Sampler 常用方法

發布時間:2020-06-23 01:21:26 來源:網絡 閱讀:1042 作者:小強測試 欄目:軟件技術

視頻地址:http://edu.51cto.com/lecturer/4626073.html



JMeter 中可以使用 Beanshell Sampler 編寫一些簡單的腳本,實現更多功能。


1、Beanshell
Beanshell 是一種輕量級的 Java 腳本,純 Java 編寫的,能夠動態的執行標準 java 語法及一些擴展腳本語法,類似于 javaScript 和 perl。

2、內置變量
Beanshell Sampler 中除了可以使用標準 java 語法之外,還有一些定義好的變量,可以直接使用。

SampleResult
ResponseCode,
ResponseMessage
IsSuccess
Label
FileName
ctx
vars
props
log
下面我按使用頻率,分別講一下最常用的幾種變量。

3、log
用于打印日志,最常用,也最簡單;
打印在 jmeter.log 中,可以設置打印級別,可以打印字符串、變量等。
使用方法:

1、打印 info 形式的普通字符串日志:
log.info("hello world");  輸出 hello world

2、拼接字符串和變量 (其中 token 是 jmeter 局部變量):
log.info("hello world" + "${token}");  輸出 hello world 和 token 變量的拼接結果

3、打印自定義變量
str = "12345";
log.info(str);  輸出 12345

4、打印 error 形式的普通字符串日志:
log.info("hihihi");
log.error("aaaaa");
輸出的區別:
2018-12-27 19:05:13,158 INFO o.a.j.u.BeanShellTestElement: hihihi
2018-12-27 19:05:13,158 ERROR o.a.j.u.BeanShellTestElement: aaaaa

print() 打印日志
在 beanshell 中還可以使用 print() 函數來打印日志,輸出字符串等信息;

print() 是在控制臺中輸出信息,log() 默認是在 jmeter.log 中輸出信息。

4、vars
用于存取 jmeter 局部變量,很常用,一定要掌握;
通常用于存取字符串內容,也可以存取對象;
vars.get()
String mykey = vars.get("keyname"); 
獲取變量名為 keyname 的值,并保存在 mykey 中。

vars.put()
vars.put("keyname","value");  
把變量 keyname(值為 value)保存到 jmeter 變量中。

vars.putObject("OBJname",new Object()); 
把一個對象 OBJname 保存到 jmeter 變量中

vars.remove()
vars.remove("keyname");
從 jmeter 變量中刪除 keyname。

5、props
用于存取 jmeter 全局的靜態變量;
其中的 key 和 value 均是字符串形式;
ymd = props.get("START.YMD");
獲取屬性 START.YMD 的值(腳本啟動日期)。

props.put("PROP1","1234");
把 1234 存入全局屬性 PROP1 中。

6、ctx
當前線程的上下文信息;
使用舉例:

ctx.getCurrentSampler(); 獲取當前 sampler 請求

ctx.getPreviousSampler(); 獲取前一個 sampler 請求

ctx.getThreadNum(); 獲取當前線程的序號,從 0 開始計數

ctx.getThread(); 獲取當前線程

ctx.getThreadGroup(); 獲取當前線程組

ctx.getProperties(); 獲取所有屬性

ctx.getVariables(); 獲取當前線程的所有變量

7、SampleResult
SampleResult.setResponseData(data);
自定義響應數據。



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女