jmeter學習指南之非GUI命令行運行詳解

視頻地址:http://edu.51cto.com/lecturer/4626073.html


一、爲什麼要用命令行運行jmeter?

主要有以下三點:

1) 圖形化界面消耗更多資源,如CPU和內存,容易使壓力機達到瓶頸,從而影響測試結果。

2) 圖形化界面不支持大型的負載測試和性能測試,併發較大時,jmeter會崩潰。

3) 命令行方式可以把腳本配置到Jenkins上實現持續集成,做成自動化測試。

二、解讀命令行參數

1、常用格式

jmeter -n -t [jmx腳本路徑] -l [測試輸出結果文件路徑]

參數解釋:

-n: 表示 non gui mode,就是非圖形化模式
 
-t: 即testplan,後跟要運行的jmeter腳本的路徑和腳本名稱。
 
    若指定路徑下沒有指定名稱的腳本,則自動創建。
 
    若沒有路徑只寫腳本名稱,則默認是在當前目錄查找或創建。
 
-l: 後跟輸出結果文件路徑和結果文件名稱。
 
    若指定路徑下沒有指定名稱的腳本,則自動創建,可以生成csv或者jtl文件。
    
    若只寫腳本名稱,則默認是在當前目錄查找或創建。
 
示例: jmeter -n -t testplan.jmx -l test.jtl
 
示例含義:以命令行模式運行當前目錄下的testplan.jmx文件,並在當前目錄下輸出日誌文件test.jtl
 
2、其它參數命令:

jmeter -n -t test.jmx -R 10.6.5.31,10.6.5.32 -l log.jtl
 
jmeter -n -t test.jmx -l  log.jtl -H 192.168.1.1 -P 8080
 
-r/R 遠程執行 -> 啓動遠程服務,即分佈式執行多臺壓力機
 
-H 代理主機 -> 設置 JMeter 使用的代理主機
 
-P 代理端口 -> 設置 JMeter 使用的代理主機的端口號
 
使用-R指定節點時,要首先在這些節點上啓動jmeter-server的服務

Linux和windows系統下運行jmeter命令行

三、Linux系統運行jmeter命令行

1、修改配置文件

如果你是第一次使用命令行執行測試腳本,那麼看到的輸出結果可能是類似下面這樣的:

這些信息僅僅告訴我們執行成功啦。

但是我想要看到本次測試的更多結果,要怎麼辦呢?

可以通過修改jmeter.properties配置文件來解決:


將上面的註釋打開,並且值修改成true,就會打開該條記錄,jmeter就會將對應的信息輸出到我們指定的jtl文件中(不過這樣會在壓測過程中產生大量的日誌文件,真正壓測時,最好不要開太多的日誌記錄),然後可以在結果文件中查看詳細的信息。

但是我們想在腳本執行的過程中實時查看結果信息,要怎麼做呢?

同樣是修改配置文件jmeter.properties

打開上面的summariser.name、summariser.interval、summariser.out這三個配置項,保存,重新運行jmeter,應該就可以在shell裏看到統計信息了,如下圖所示:

這裏顯示的信息就相當於GUI界面下聚合報告元件所顯示的信息。

其中主要有兩種信息:summary + 和summary =,其它項都是類似的

summary +   4386 in 00:00:30:在30秒內增加了4386個請求,其中時間間隔由配置文件中的interval統計頻率的值決定

summary =  27455 in 00:03:12:在3分12秒內產生的總請求數是27455個,其中的時間段是從腳本運行開始計算到當前時間爲止,一般在腳本運行過程中主要關注 “summary=” 信息即可


146.2/s:系統每秒處理的請求數,相當於TPS

Avg:   684:平均響應時間

Min:   201:最小響應時間

Max:  1499:最大響應時間

Err:     0 (0.00%):錯誤數/率

Active: 100:活動的線程數

2、那麼怎麼查看生成的jtl文件呢?

把生成的jtl結果文件下載到本地

打開jmeter,添加察看結果樹和聚合報告元件

在”文件名”處選擇瀏覽,打開jtl結果文件,即可察看詳細結果

3、命令行中的文件路徑

示例:jmeter -n -t testplan.jmx -l test.jtl

JMeter 默認去當前目錄尋找腳本文件,並把日誌記錄在當前目錄。比如你在 C:toolsapache-jmeter-3.0bin 目錄下執行以上命令,JMeter 會去該目錄下尋找 test.jmx 腳本並把執行結果放在該目錄。

如果你的腳本在其他目錄,而且想要把執行結果放在另外文件夾,需要使用絕對路徑告訴 JMeter,比如:

C:toolsapache-jmeter-3.0bin>jmeter -n -t e:addCustomer.jmx -l e:addCustomer.jtl

四、windows系統下運行jmeter命令行

在windows下運行命令行跟linux下是一樣的,只是通過cmd命令行工具來運行的



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