使用Jmeter進行基本壓力測試

摘要:選擇合適版本下載,PC端與Linux端最好版本一致.

一、下載jmeter

下載地址:http://archive.apache.org/dist/jmeter/

選擇合適版本下載,PC端與Linux端最好版本一致

二、錄製腳本

1.簡單的http請求可直接在jmeter上填寫

2.也可以用badboy工具錄製jmeter腳本

三、進行測試

1.運行jmeter.bat文件

3.添加http請求2.添加線程組

4.輸入服務器名或ip地址、端口號、http請求方法(get或post)、路徑等

5.設置線程數(併發用戶數)、Ramp-up Period(多久啓動完所有線程)、循環次數

6.啓動

7.jmeter報內存溢出時,編輯jmeter.bat文件,修改以下數據set HEAP=-Xms1024m -Xmx1024m,視情況設置新值,默認值爲512

四、多機聯測

利用JMeter進行負載測試的時候,使用單臺機器模擬測試超過1000個行程的併發就有些力不從心,在執行的過程中,JMeter自身會自動關閉,要解決這個問題,可以使用分佈式測試,運行多臺機器運行所謂的 Agent 來分擔 JMeter自身的壓力,並藉此來獲取更大的併發用戶數,但是需要進行相關的一些修改,具體如下:

1、在所有期望運行 JMeter 作爲 Load Generator 的機器上安裝 JMeter,並確定其中一臺機器作爲 Controller,其他的機器作爲 Agent。然後運行所有 Agent 機器上的JMeter-server.bat文件——假定我們使用兩臺機器 192.168.0.1 和 192.168.0.2 作爲 Agent;

2、在Controller 機器的 JMeter 安裝目錄下找到 bin 目錄,再找到 JMeter.properties 這個文件,使用記事本或者其他文字編輯工具打開它;

3、在打開的文件中查找“remote_hosts=”這個字符串,你可以找到這樣一行“remote_hosts=127.0.0.1”。其中的 127.0..0.1 表示運行 JMeter Agent 的機器,這裏需要修改爲“remote_hosts=192.168.0.1:1099,192.168.0.2:1099”——其中的 1099 爲 JMeter 的 Controller 和 Agent 之間進行通訊的默認 RMI 端口號;

4、保存文件,並重新啓動 Controller 機器上的 JMeter.bat,並進入 Run -> Remote Start 菜單項,在這裏可以看到遠程啓動菜單下面有192.168.0.1 ,192.168.0.1兩個IP地址

5、如果要讓某個電腦執行,可以點擊改電腦的IP地址就可以,如果兩個都要執行,可以點擊Run 菜單下的“遠程運行全部”菜單

6、有時候用作代理的機器太少,仍不能滿足需要,則需要將作爲Controller的電腦也當作Agent,則同樣需要修改 JMeter.properties文件,將Controller的IP地址寫入。同時,這個時候,需要打先打開Controller 電腦中JMeter下bin目錄下的jmeter-server.bat,然後再打開JMeter.bat,此時,進入Run -> Remote Start菜單,可以看到Controller也作爲遠程機器進行運行。

五、使用命令行執行jmeter

1.Windows環境下

命令行方式下進入jmeter的bin目錄,執行:JMeter -n -t 文件名.jmx -l log.jtl

2.Linux環境下

執行命令:/home/apache-jmeter-2.8/bin/jmeter -n -t download.jmx -l log.jtl

linux下最好輸全路徑,不然可能報bash:jeter:command not found,找不到執行文件錯誤

-n This specifies JMeter is to run in non-gui mode

-t [name of JMX file that contains the Test Plan].

-l [name of JTL file to log sample results to].

-r Run all remote servers specified in JMeter.properties (or remote servers specified on command line by overriding properties)

The script. also lets you specify the optional firewall/proxy server information:

-H [proxy server hostname or ip address]

-P [proxy server port]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章