一、下載linux版本的jdk ----注:下載的jdk和jmeter要與window的jdk和jmeter一致 下載地址:https://www.oracle.com/java/technologies/downloads/#java11
二、在虛擬機中使用su root 超級管理員的賬號進行操作,在/usr/local下創建jdk檔案夾
在linux中輸入命令:cd /usr/local ----命令:mkdir jdk
三、上傳jdk1.8包上傳到指定目錄jdk中,將其解壓到jdk目錄下
在linux中輸入命令:tar -zxvf jdk-8u261-linux-x64.tar.gz
四、配置環境變數——在linux中輸入命令:vim /etc/profile
在最后添加如下(注意:系統之前如果有環境變數則不要動他們,在原有的基礎添加jdk環境變數即可):
#set java enviroment
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_144 ------linux下安裝jdk的位置
export JRE_HOME=${JAVA_HOME}/jre
export CLASS_PATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
五、執行profile檔案, 輸入命令:source /etc/profile
六、查看jdk安裝情況,輸入命令:java -version 出現圖下則表示安裝成功

七、安裝jmeter,將windows下的包發送到linux中并進行解壓,進入安裝包目錄執行解壓,輸入命令:tar zxvf apache-jmeter-5.2.1.tgz
八、執行命令vi /etc/profile,在檔案底部增加如下內容,并保存,輸入命令按i,保存退出命令為:wq
JMETER=/home/root2/jmeter/apache-jmeter-5.2.1 ------linux下jmeter存放的位置
CLASSPATH=$JMETER/lib/ext/ApacheJMeter_core.jar:$JMETER/lib/jorphan.jar:$JMETER/lib/logkit-2.0.jar:$CLASSPATH
PATH=$PATH:$JMETER/bin
export JMETER PATH
九、執行命令source /etc/profile ,生效檔案修改,
十、執行命令jmeter -v,顯示jmeter版本資訊則表示安裝成功

十一、分布式部署操作步驟:
1、控制機和執行機的配置
1) 控制機設定:
打開在windows下的jmeter中的bin-jmeter.properties檔案,搜索host,編輯remote_hosts=localhost:1099,localhost:2010 (該地址為linux下執行機的地址,具體地址資訊可在linux下輸入ifconfig可查看地址)
如下:
# remote_hosts=127.0.0.1
remote_hosts=192.168.202.130:1099 (有多少臺執行機,則添加多少臺執行機的ip,埠都一致,多臺以逗號進行隔開)
關閉ssl設定--不關倍訓連不上執行機:
打開在windows下的jmeter中的bin-jmeter.properties檔案,搜索以下,將false改為true,改為后如下:
#Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
2)執行機設定
打開在linux下的jmeter中的bin-jmeter.properties檔案,搜索host,編輯remote_hosts=localhost:1099,localhost:2010 (該地址為linux下執行機的地址,具體地址資訊可在linux下輸入ifconfig可查看地址)
如下:
# remote_hosts=127.0.0.1
remote_hosts=192.168.202.130:1099
關閉ssl設定--不關倍訓連不上執行機:
打開在linux下的jmeter中的bin-jmeter.properties檔案,搜索以下,將false改為true,改為后如下:
#Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
2、配置完后,操作流程
1) 啟動運行:在;linux下進入bin目錄下運行: ./jmeter-server -Djava.rmi.server.hostname=192.168.202.130:1099
2) 如運行因為權限不夠提示以下報錯:
bash: ./jmeter-server: Permission denied
3)修改最高權限
chmod 777 jmeter-server
4)再次運行: ./jmeter-server -Djava.rmi.server.hostname=192.168.202.130
5)出現下圖則運行成功:

3、在window上進行遠程啟動執行機報錯場景的解決方案
解決方案:
1)查看slave上的ip與master組態檔中的ip是否一致;
如果不一致,查看slave機器上是否有虛擬網卡,將網卡關閉,在此啟動Jmeter-server.bat,查看是否正確
2)查看防火墻是否關閉
注:centos7上關閉防火墻: firewall-cmd --state //查看防火墻狀態
systemctl stop firewalld.service //關閉防火墻
問題1:當設定csv檔案路徑時,如果路徑不對,無回應
解決方法:將csv檔案以“相對路徑”命名,即將csv檔案直接放入bin目錄下,在Jmeter路徑中直接寫入檔案名
問題2:(Linux)默認端看1099被占用,如何關閉某個被占用埠的方法
1)netstat -ntlp //查看當前所以tcp埠
nestat -ntulp |grep 1109 //查看所有1109埠使用情況
2)lsof -i:1109 //查看占用1109埠的程式pid
3)kill -9 1109 //kill掉該行程
(windows)上關閉已被占用的埠 http://www.jb51.net/os/windows/203315.html
如1099埠被占用:1)在cmd命令列下輸入以下命令:netstat -aon|findstr "1099",回車之后就可以看見串列中的PID,然后根據PID在電腦的任務管理器中查看對應的占用程式,然后將其關閉即可;2)然后根據查詢的PID找到對應的行程,我們可以看到占有1099這個程式的行程ID,如:5264,繼續輸入命令【tasklist|findstr "5264"】,5264就是行程ID,現在知道是哪個行程占用的我們的埠,即可在任務管理器中殺掉該行程,
問題3:如果使用slave發送資料后,長時間無回應
問題排查:
1)查看發送的資料中是否存在csv引數檔案,查看slave機器的bin目錄下是否有該檔案;
2)查看建立的tcp采樣器中屬性“TCPClient classname”處是否添加協議:org.apache.jmeter.protocol.tcp.sampler.BinaryTCPClientImpl
問題4:如果你的JMeter回傳資料是亂碼
解決方法:在JMeter安裝路徑的bin目錄下,打開檔案jmeter.properties,把Sampleresult.default.encoding的值改為 utf-8 即可,
問題5:啟動jmeter時,報錯:Error occurred during initialization of VM Could not reserve enough space for object heap errorlevel=1
解決方法:1)bin目錄下打開jmeter.bat檔案,查找set HEAP,將set HEAP=-Xms128m -Xmx512m修改為set HEAP=-Xms512m -Xmx512m;2)重新啟動jmeter.bat即可
問題6:當jmeter用作資料庫API測驗時,如果資料庫介面中引數中傳遞一個陣列,如getApps(int nu, int appID[ ]),實際使用程序中報語法錯誤
解決方法:可嘗試在呼叫該介面傳參中加入關鍵字“ARRAY”,如getApps(3, ARRAY[7,8])
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/549163.html
標籤:其他
上一篇:測驗人員轉型是大勢所趨:我的10年自動化測驗經驗分享
下一篇:Defi開發簡介
