性能測試場景是用來模擬模擬真實用戶操做的工做單元,因此場景設計必定要切合用戶的操做邏輯,jmeter主要是經過線程組配合其餘組件來一塊兒完成場景的設置。html
Jmeter線程組其實是簡歷一個線程池,而後根據用戶的設置完成線程池的初始化,在運行時作各類邏輯處理java
上圖是一個線程組的配置界面,下面咱們對具體的參數進行說明shell
是名稱和註釋的配置,這裏根據本身要測試的場景設置就好,最好是見名知意服務器
在取樣器錯誤後要執行的操做,也就是說在某一個請求出錯後的異常處理方式,有5中方式併發
在大量用戶併發請求時,服務器可能會出現錯誤響應,這屬於正常現象,此時要把錯誤記錄下來,繼續後面的請求oop
運行的線程數設置,一個線程對應一個用戶性能
好比說設置了50個線程,Ramp-up period設置10秒,那麼每秒就會啓動5個線程,若是設置0秒,那麼50線程就會當即啓動。測試
JMeter 全部的線程是一開始就建立完成的,只是遞增的時候會按照上面的規則遞增。若是選擇了這個選項,則不會在一開始建立全部線程,只有在須要時纔會建立。spa
若是不選擇,在啓動場景時,JMeter 會用更多的 CPU 來建立線程,它會影響前面的一些請求的響應時間,由於壓力機的 CPU 在作其餘事情嘛。若是選擇了的話,就會在使用時再建立,CPU 消耗會平均一些,可是這時會有另外一個隱患,就是會稍微影響正在跑的線程命令行
Specify Thread lifetime 線程運行時間,這個配置只有Loop count 請求的重複次數,配置了infinite,纔會生效,不然仍是Loop count 控制線程的執行
Jmeter的運行方式分爲兩種,一種是GUI可視化界面運行,另外一種是命令行運行,這兩種都支持本地化運行即單體運行和遠程運行。這裏咱們主要介紹遠程執行和jmeter命令行運行。
遠程配置
遠程運行節點端口配置:
server_port=1099 server.rmi.localport=1099
運行:
./jmeter-server -Djava.rmi.server.hostname=本機ip
本地配置
remote_hosts配置
remote_hosts=ip:port,ip:prot,... ip和port都是遠程執行機的ip和server的運行端口
運行:
java -jar ApacheJMeter.jar -n -t Thread\ Group.jmx -r -l result.jtl -R ip
-R 指定要哪臺機器運行測試腳本
命令行執行./jmeter -?能夠輸出命令行參數選項,這裏只介紹一些比較經常使用的,更多用法看官方文檔
歡迎你們去 個人博客 瞅瞅,裏面有更多關於測試實戰的內容哦!!