溫馨提示×

溫馨提示×

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

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

怎么通過Jython調(diào)用Python腳本

發(fā)布時間:2021-06-23 09:05:01 來源:億速云 閱讀:334 作者:chen 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“怎么通過Jython調(diào)用Python腳本”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

前言

前面在 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調(diào)用Python腳本

下載 Jython Standalone 版本

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-46n0NnMC-1624153273722)(https://img2020.cnblogs.com/blog/1070438/202101/1070438-20210112103001805-1640164092.png)]

把下載的Jython 的jar包放到 jmeter的lib文件夾。重啟jmeter

JSR223 Sampler

添加-取樣器-JSR223 Sampler

怎么通過Jython調(diào)用Python腳本

選擇 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)

怎么通過Jython調(diào)用Python腳本

變量獲取與日志

前面定義了用戶變量 user, 變量的獲取依然用 vars.get('var name') 獲取。
這里print的內(nèi)容無法輸出到屏幕,可以用log.info() 輸出日志內(nèi)容

怎么通過Jython調(diào)用Python腳本

設(shè)置響應(yīng)

通過SampleResult對象設(shè)置響應(yīng)的結(jié)果

# 設(shè)置響應(yīng)信息
SampleResult.setResponseData("return message");
SampleResult.setResponseCode("502")
SampleResult.setSuccessful(False)

怎么通過Jython調(diào)用Python腳本

也可以返回自定義的結(jié)果

怎么通過Jython調(diào)用Python腳本

“怎么通過Jython調(diào)用Python腳本”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向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