天天看點

JMeter中級篇-5-JMeter中BeanShell的簡單舉例

       這篇開始,我們來學習一些在基礎篇沒有介紹的功能,主要是基礎篇裡,要學的概念太多,這篇我們來學習一個BeanShell 在JMeter上的簡單使用舉例。首先,我們需要了解下什麼是BeanShell, BeanShell是一個小巧免費的JAVA源碼解釋器,支援對象式的腳本語言特性,亦可嵌入到JAVA源代碼中,能動态執行JAVA源代碼并為其擴充了腳本語言的一些特性.這段描述是百度百科裡翻譯官網的描述。一開始,不了解也沒關系,我們利用JMeter做簡單的壓力或者性能測試,很少用到它。目前來說,我們就知道這句話就可以:JMeter裡面提供了對BeanShell的支援,使用者可以利用BeanShell寫一些腳本來輔助性能測試。這裡順便提一下,在TestNG這個單元測試架構,也是支援BeanShell的。

      下面,我們就通過一個最基本的操作來示範BeanShell在JMeter上的請求和調試過程。首先,打開JMeter 圖像化界面,建立一個線程組。然後點選線程組,右鍵,選擇samplers,然後點選BeanShell Sampler。

JMeter中級篇-5-JMeter中BeanShell的簡單舉例

       為了配合BeanShell的示範,我們先點選測試計劃,在使用者自定義的變量這個範圍,點選添加,添加一個變量,名稱為url,變量的值為www.baidu.com

JMeter中級篇-5-JMeter中BeanShell的簡單舉例

選擇線程組,我們再添加一個Debug Sample和察看結果樹監聽。

JMeter中級篇-5-JMeter中BeanShell的簡單舉例

      下面,我們來開始寫BeanShell代碼或者叫指令。我們寫的第一行是,從變量池裡取出url這個變量并指派給a。

JMeter中級篇-5-JMeter中BeanShell的簡單舉例

       解釋一下,這裡有點像Java的文法,需要分号結尾,vars你可以了解為變量池,這個名詞是固定的,類似關鍵字不能亂寫。Get()方法就很好了解,根據變量名稱去擷取變量的值。我們寫好了之後,點選運作,在察看結果樹監聽裡,看看請求的響應資料就可以得到變量a的值。

JMeter中級篇-5-JMeter中BeanShell的簡單舉例

還有一種方式,直接利用java裡面的列印語句來輸出變量a的值。

JMeter中級篇-5-JMeter中BeanShell的簡單舉例

      點選菜單欄上的清除按鈕,然後我們再次來測試運作下。注意觀察你打開JMeter這個cmd終端,在這裡會列印出變量a的值。

JMeter中級篇-5-JMeter中BeanShell的簡單舉例

      關于JMeter的BeanShell的簡單使用就介紹到這裡,後面我們學習了如何在JMeter上發送一個JAVA請求的sampler,我們會再次利用BeanShell來示範。

繼續閱讀