JMeter Linux下执行测试
JMeter在本機上運行壓測腳本時,一般會有兩個瓶頸:
網絡:本機與服務器之間的網絡開銷,會嚴重影響服務的性能表現。而且,本機與服務器一般不在同一個網段,網絡瓶頸會更加明顯。
本機性能:工作所用的筆記本,其性能很難與linux系統服務器的性能相比。而且,在Windows端運行的JMeter相比于Linux端的no-gui模式,本身性能也會差一些。另外,壓測對本機的占用,會影響我們其他工作的開展。
基于以上兩點考慮,將壓測腳本部署到Linux服務器上運行,是一個很好的選擇。在實際的性能測試中,一般會專門申請一臺CPU、內存、磁盤指標都較好的linux服務器作為壓測機器。
1 環境配置
- 版本情況:Linux版本為Centos7,JMeter使用版本為3.3,JDK版本為1.8。
-
JDK配置:
1、將tar.gz格式的JDK安裝包通過xshell5上傳到/opt目錄;
2、將安裝包解壓;
3、環境變量設置:vi /etc/profile,在文件最后面添加下面一段內容,保存后退出:
export JAVA_HOME=/opt/jdk1.8.0_131
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
4、source /etc/profile使配置修改生效;
5、驗證:輸入java –version,出現以下信息,說明JDK安裝配置完畢; - ?注意事項:安裝好的CentOS會自帶OpenJdk,用命令 java -version ,會有下面的信息:
? ? ?1、java version "1.6.0"
? ? ?2、OpenJDK ?Runtime Environment (build 1.6.0-b09)
? ? ?3、OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode)
? ? ?最好還是先卸載掉openjdk,在安裝sun公司的jdk
? ? 1.先查看 rpm -qa | grep java,顯示如下信息:
? ? ?java-1.4.2-gcj-compat-1.2.2.0-40jpp.115
? ? ?java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
? ? 2.執行下列命令,刪除原有JDK:
? ? rpm -e --nodeps java-1.4.2-gcj-compat-1.2.2.0-40jpp.115
? ? rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
? ? 3.如果出現“找不到openjdk source”,使用下列命令進行刪除:
? ? yum -y remove java java-1.4.2-gcj-compat-1.2.2.0-40jpp.115
? ? yum -y remove java java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
? ? JMeter安裝
? ? JMeter在linux系統中的安裝十分簡單:
????????1、將Jmeter安裝包通過xshell導入/usr/local目錄;
????????2、將Jmeter安裝包解壓縮:tar –zxvf apache-jmeter-3.3.tgz
????????3、賦予權限:chmod -R 777 apache-jmeter-3.3
????????4、配置環境變量:vi /etc/profile,在末尾輸入:export PATH=/usr/local/apache-jmeter-3.3/bin/:$PATH,保存退出;
? ? ? ? 5、source /etc/profile 使配置生效;
????????6、檢驗jmeter是否可以運行:jmeter –v,出現以下信息,說明Jmeter安裝配置成功;
?
no-gui模式運行腳本
一、操作步驟
1、在windows下Jmeter里編寫完成腳本,腳本名稱:test.jmx;
2、將腳本上傳到Linux系統指定目錄中,例如:/opt/local/jmeterScripts
3、執行以下命令:jmeter -n -t /usr/local/jmeterScripts/test.jmx -l /usr/local/testResult/test.jtl
-n表示以nogui方式運行測試計劃
-t表示測試計劃,后面跟測試計劃名稱
-l表示測試結果,后面跟測試結果文件名稱
當控制臺出現上圖,說明腳本成功運行。
出于方便考慮,將啟動命令寫入腳本start.sh中:
#!/bin/bash
jmeter -n -t /usr/local/jmeterScripts/test.jmx -l /usr/local/testResult/test.jtl
腳本運行結束后,會在testResult目錄下生成一個test.jtl文件,將這個文件導出到windows端JMeter中的聚合報告中,即可查看測試詳情。
?
二、注意事項
如果使用參數化策略,將參數化文件放入Linux系統中Jmeter安裝文件的bin目錄下,同時腳本參數化設置中,文件路徑只寫文件名即可。
以往這種方法是正常的,但在最近的實踐中,遇到了詭異的問題,參數化文件被報不存在的錯誤:
?
解決方案是:在Filename處填寫參數化文件在Linux系統下的絕對路徑,當然這個輸入框是不允許輸入Linux路徑格式的,需要通過引用變量的方式賦值。
用戶定義的變量中填寫參數化文件的完整路徑:
其他可能遇到的問題就是,腳本中引用了一些jar包或者使用了插件,而linux中的JMeter安裝包中未含有這些資源,最簡單的解決方案就是將包含完整資源的windows端JMeter安裝包壓縮后上傳到Linux系統中。
總結
以上是生活随笔為你收集整理的JMeter Linux下执行测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html四种选择器的特点,css四种选择
- 下一篇: linux替换屏幕保护进程,有没有一个体