前面三篇文章分別講述了 HTTP Mirror Server 、 Debug PostProcessor 和 Debug Samper 的腳本調試實例。此文主要講述第四種調試方法,通過 BeanShell 腳本結合 jmeter.log 查看響應的變量等信息。
BeanShell腳本訪問變量主要通過 vars 和 props 去訪問,常用主要方法如下:
-
- vars.get(變量名):獲取定義變量對應的值,含BeanShell腳本生成變量;
- vars.put(變量名,變量值):生成新的變量或修改已存在的變量;
- props.get(變量名):獲取jmeter.properties中定義變量對應值;
閑話少數,直接上圖了(待更新圖片。。。敬請期待)。
腳本結構圖如下所示:
【BeanShell Sampler-036后037前】腳本截圖如下所示(自己敲敲,有益學習 ^_^):
【BeanShell PostProcessor-037樣本線程內】腳本截圖如下所示:
【BeanShell Sampler-037后】腳本截圖如下所示:
【Debug Sampler 配置】如下所示(方便后續對比 props 輸出):
執行腳本,查看執行結果(jmeter.log):
【(037 樣本線程內)生成變量的值】腳本輸出如下所示:
【BeanShell PostProcessor(037 樣本線程內)】輸出如下所示:
【BeanShell Sampler(在JMeter博文 037 之后)】輸出如下所示:
【Debug Sampler】部分(jmeter.properties)輸出如下所示:
綜上可見:
1、BeanShell腳本可訪問腳本之前所有系統已定義的變量,未定義的輸出為null;
2、BeanShell腳本可通過vars.put(變量名,變量值)方法生成新的定義變量;
3、BeanShell腳本參數通過空格鍵分組為list,通過bsh.args[index]進行訪問;
4、BeanShell腳本可訪問 JMeterProperties中存在的變量,即jmeter.properties中定義的變量。可通過在其中定義變量達到相應的目的,相關實例請參閱 JMeter學習-029-JMeter配置文件propertie配置項讀取及應用實例;
5、BeanShell腳本可采用直接引用的方式讀取(推薦)或參數形式訪問;
6、BeanShell腳本參數變量不存在時,引用方式視為字符串。
相關文章鏈接:
JMeter學習-036-JMeter調試工具之三---Debug Sampler
JMeter學習-035-JMeter調試工具之二---Debug PostProcessor
JMeter學習-034-JMeter調試工具之一---HTTP Mirror Server
相關參考鏈接:
http://jmeter.apache.org/usermanual/component_reference.html#BeanShell_Sampler
http://jmeter.apache.org/usermanual/component_reference.html#BeanShell_PreProcessor
http://jmeter.apache.org/usermanual/component_reference.html#BeanShell_PostProcessor
http://www.beanshell.org/docs.html
至此,此文順利完結,希望此文能夠給初學 JMeter 的您一份參考。
最后,非常感謝親的駐足,希望此文能對親有所幫助。熱烈歡迎親一起探討,共同進步。非常感謝! ^_^