前言
前面在 BeanShell 里面是通過 java 腳本實現(xiàn)請求的預(yù)處理,jmeter里面也可以調(diào)用python的腳本,需安裝 jython.jar 的插件.
Jython 是 Python 的純 Java 實現(xiàn)。她無縫地結(jié)合了 Java 類與 Python,使用戶能以 Python 語言的語法編寫在 Java 虛擬機(jī)上運行的 軟件
Jpython
Jython 是 Python 的純 Java 實現(xiàn)。她無縫地結(jié)合了 Java 類與 Python,使用戶能以 Python 語言的語法編寫在 Java 虛擬機(jī)上運行的 軟件。
它的特點有:與相似的 Java 程序相比,Jython 極大的的減少了編程代碼量。Jython 同時擁有解釋器和編譯器,使其無需編譯就可以測試程序代碼。
官網(wǎng)下載地址:https://www.jython.org/download 下載jython-standaloneXXX.JAR
把下載的Jython 的jar包放到 jmeter的lib文件夾。重啟jmeter
JSR223 Sampler
添加-取樣器-JSR223 Sampler
選擇 jython2.7 版本,在Script區(qū)域?qū)懴鄳?yīng)的代碼,注意這里的語法是支持python2.7的,3.x的語法不支持。
# 獲取jmeter 參數(shù)
user = vars.get("user")
print "hello"
# 輸出日志
log.info(u"獲取到的變量user:" + user)
# 設(shè)置響應(yīng)信息
SampleResult.setResponseData("return message");
SampleResult.setResponseCode("502")
SampleResult.setSuccessful(False)
變量獲取與日志
前面定義了用戶變量 user, 變量的獲取依然用 vars.get('var name')
獲取。
這里print的內(nèi)容無法輸出到屏幕,可以用log.info() 輸出日志內(nèi)容
設(shè)置響應(yīng)
通過SampleResult對象設(shè)置響應(yīng)的結(jié)果
# 設(shè)置響應(yīng)信息
SampleResult.setResponseData("return message");
SampleResult.setResponseCode("502")
SampleResult.setSuccessful(False)
也可以返回自定義的結(jié)果
以上就是通過Jython調(diào)用Python腳本的詳細(xì)內(nèi)容,更多關(guān)于Jython調(diào)用Python腳本的資料請關(guān)注腳本之家其它相關(guān)文章!
您可能感興趣的文章:- Java實現(xiàn)的執(zhí)行python腳本工具類示例【使用jython.jar】
- Java與Python之間使用jython工具類實現(xiàn)數(shù)據(jù)交互
- Java實現(xiàn)調(diào)用jython執(zhí)行python文件的方法
- Java調(diào)用python的方法(jython)