問題
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上的參數化檔案路徑

參數化檔案
csv設定
腳本
運作,檢視結果,可以看到通過參數化的路徑找到了對應的參數化檔案
如果要放到linux上,把csv檔案名改為:${path_linux}即可,但是這樣略顯麻煩。
有人可能要問,為啥不直接改路徑要參數化呢?之前遇到過,儲存腳本時,間隔符會自動化變成目前系統的,是以最終會出錯,新版本jmeter好像沒這個問題了。
方案二:自動擷取路徑(推薦)
win下,到jmeter的bin下啟動jmeter
檢視屬性
win下目錄間隔符
user.dir是啟動檔案所在目錄
linux下,到jmeter的bin下啟動jmeter
linux下目錄間隔符
user.dir
也可以添加“調試取樣器”檢視系統屬性,在檢視結果樹中看
下面,我們要用到擷取屬性這個函數:__P()
__P(user.dir,)擷取啟動檔案目錄
__P(file.separator,)擷取間隔符
是以,csv檔案名我們可以寫為:
${__P(user.dir,)}${__P(file.separator,)}data.txt
也可以