![](/img/trans.png)
[英]How to run JMeter using jmx file in the azure pipelines with/out docker
[英]Trying to run a JMeter test using a docker container for JMeter (non GUI mode) throws error “Could not open xxxx.jmx file”
我正在嘗試使用Docker容器分發加載測試。
在JMeter的本地,我的測試在GUI或非GUI模式下正確運行,但是當我嘗試使用JMeter的docker鏡像在非GUI模式下運行它們時:
docker run egaillardon/jmeter -n -t ~/Developer/testing/login_test.jmx -l ~/Desktop/resultado.jtl
我收到錯誤:
無法打開〜/ Developer / testing / login_test.jmx
我試過JMeter的不同(egaillardon/jmeter, justb4/jmeter, vmarrazzo/jmeter)
圖像(egaillardon/jmeter, justb4/jmeter, vmarrazzo/jmeter)
,我在其中任何一個都得到了相同的錯誤。 任何人都知道我必須在我的jmx文件中更改它以使其可讀嗎?
我已經嘗試在Stack Exchange中使用此解決方案,但沒有一個對我有用。
您還可以將主機目錄安裝到容器中的默認工作目錄( /jmeter
)。
示例:
docker run --detach --rm --volume `pwd`:/jmeter egaillardon/jmeter-plugins --nongui --testfile test.jmx --logfile result.jtl
通過這樣做,jmeter運行日志文件( jmeter.log
)也將在主機目錄中創建。
此外,要解決有關文件權限的問題,還可以將主機上用戶的用戶ID和組ID分配給容器內的jmeter用戶。
示例:
docker run --env JMETER_GROUP_ID=`/usr/bin/id -g` --env JMETER_USER_ID=`/usr/bin/id -u` --rm egaillardon/jmeter --server -Jserver.rmi.ssl.disable=true
~/Developer/testing/login_test.jmx
將從容器文件系統中加載,很可能是容器文件系統中不存在此路徑。
為了克服這一點,你可以從你的主機文件系統的文件安裝到與您的容器文件系統搬運工量 :
docker run -v ~/Developer/testing/:/workspace egaillardon/jmeter -n -t /workspace/login_test.jmx -l /workspace/resultado.jtl
-v ~/Developer/testing/:/workspace
:將~/Developer/testing/
目錄從主機掛載到容器文件系統中的路徑/workspace/
-n -t /workspace/login_test.jmx -l /workspace/resultado.jtl
:在運行時傳遞給容器processus(jmeter)的選項,因此在容器的上下文中。 我們需要調整路徑,使它們與我們在配置卷時選擇的位置相匹配。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.