Jmeter GUI及NON GUI下實現分佈式

01

分佈式

Jmeter的集群模式可以讓我們將多臺機器聯合起來一起產生負載,從而彌補單臺機器負載生成能力不足的問題。

假設我們的測試計劃會產生100個threads,我們使用6臺機器進行分佈式測試的時候,一共會產生100 * 6 = 600的負載。

02

約定

client: 大腦,控制其他執行機的機器

server: 真正執行test plan的機器

03

注意事項

所有機器最好都在同一個局域網下

所有機器運行相同版本的jmeter

所有機器都使用同一個版本的java

jmeter版本最好 3.1

調度機(master),其它機器做為執行機(slave)。

04

步驟

1、調度機配置

添加執行機ip地址,打開jmeter.properties(添加ip後重啟jmeter)

Jmeter GUI及NON GUI下實現分佈式


打開jmeter-server.bat


Jmeter GUI及NON GUI下實現分佈式


關閉防火牆

Jmeter GUI及NON GUI下實現分佈式


2、執行機配置

打開jmeter-server.bat

Jmeter GUI及NON GUI下實現分佈式


關閉防火牆

Jmeter GUI及NON GUI下實現分佈式


3、調度機打開jmeter,執行分佈式操作,選擇遠程啟動可以啟動一個執行機,選擇全部啟動,執行機和調度機全部啟動


遠程啟動一個執行機(可以看到產生一個HTTP請求)


Jmeter GUI及NON GUI下實現分佈式


Jmeter GUI及NON GUI下實現分佈式


遠程全部啟動(可以看到產生兩個HTTP請求)

Jmeter GUI及NON GUI下實現分佈式


Jmeter GUI及NON GUI下實現分佈式


05

拓展

non gui模式下進行分佈式操作

一般情況下我們都是在NonGUI模式下運行jmeter。這樣做有兩個好處

節省系統資源,能夠產生更大的負載

可以通過命令行參數對測試場景進行更精細的配置


1、新建一個文件夾,存放jmeter腳本

Jmeter GUI及NON GUI下實現分佈式


2、在當前窗口打開cmd窗口,運行命令

D:\\jmeter3.1\\apache-jmeter-3.1\\bin\\jmeter -n -r -t baidu.jmx -l res.jtl -e -o ./report

Jmeter GUI及NON GUI下實現分佈式


參數詳解

-n 表示使用non-gui模式

-t [JMX測試腳本的名稱].

-l [保存JTL 測試結果文件的路徑].

-j [JMeter log文件的路徑].

-r 在JMeter的遠程機器上運行測試,遠程機器由 property " remote_hosts "指定

-R [遠程機器列表] 在指定的遠程機器上運行測試

-g [CSV 文件路徑] 通過csv文件來創建dashboard報告

-e 運行結束後創建dashboard報告

-o 在哪個目錄創建dashboard報告,該目錄必須為空或者不存在

3、查看non gui 模式下分佈式測試報告


Jmeter GUI及NON GUI下實現分佈式


Jmeter GUI及NON GUI下實現分佈式


分享到:


相關文章: