天天看點

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

問題

win下做好的帶參數化檔案的腳本,放到linux下運作,由于參數化檔案路徑不正确,導緻腳本運作失敗,如果解決這個問題呢?

方案一:參數化路徑

比如,參數化檔案我放到jmeter的bin目錄下,參數化檔案名為data.txt

如果在win上,路徑為:D:apache-jmeter-5.1.1indata.txt

如果在linux上,路徑為:/usr/local/apache-jmeter-5.1.1/bin/data.txt

先自定義變量,存儲win和linux上的參數化檔案路徑

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

參數化檔案

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

csv設定

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

腳本

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

運作,檢視結果,可以看到通過參數化的路徑找到了對應的參數化檔案

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題
linux pfile參數檔案路徑,jmeter參數化檔案路徑問題
linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

如果要放到linux上,把csv檔案名改為:${path_linux}即可,但是這樣略顯麻煩。

有人可能要問,為啥不直接改路徑要參數化呢?之前遇到過,儲存腳本時,間隔符會自動化變成目前系統的,是以最終會出錯,新版本jmeter好像沒這個問題了。

方案二:自動擷取路徑(推薦)

win下,到jmeter的bin下啟動jmeter

檢視屬性

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

win下目錄間隔符

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

user.dir是啟動檔案所在目錄

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

linux下,到jmeter的bin下啟動jmeter

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

linux下目錄間隔符

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

user.dir

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

也可以添加“調試取樣器”檢視系統屬性,在檢視結果樹中看

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題
linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

下面,我們要用到擷取屬性這個函數:__P()

__P(user.dir,)擷取啟動檔案目錄

__P(file.separator,)擷取間隔符

是以,csv檔案名我們可以寫為:

${__P(user.dir,)}${__P(file.separator,)}data.txt

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題

也可以

linux pfile參數檔案路徑,jmeter參數化檔案路徑問題