Jmeter性能壓測

目錄

一、準備工作——Jmeter安裝

二、壓力測試

1、創建線程組

線程組參數詳解

2、創建Http請求

Http請求主要參數詳解

3、查看結果樹

4、添加聚合報告

聚合報告參數詳解

三、完整步驟圖示


什麼是壓力測試?

壓力測試就是被測試的系統,在一定的訪問壓力下,看程序運行是否穩定/服務器運行是否穩定(資源佔用情況)。

例如: 模擬2000個用戶同時到一個購物網站購物,測試這些用戶打開頁面的速度是否會變慢,或者網站是否會奔潰。

一、準備工作——Jmeter安裝

1、安裝Jmeter之前需要先安裝好JDK環境。

2、下載Jmeter安裝包:http://jmeter.apache.org/

3、解壓安裝包,進入bin目錄,點擊jmeter.bat啓動Jmeter。

二、壓力測試

1、創建線程組

如圖使用Jmeter創建線程組

創建完界面如下:

線程組參數詳解

(1)線程數:虛擬用戶數。一個虛擬用戶佔用一個進程或線程。設置多少虛擬用戶數在這裏也就是設置多少個線程數。 
(2)Ramp-Up Period(in seconds)準備時長:設置的虛擬用戶數需要多長時間全部啓動。如果線程數爲10,準備時長爲2,那麼需要2秒鐘啓動10個線程,也就是每秒鐘啓動5個線程。 
(3)循環次數:每個線程發送請求的次數。如果線程數爲10,循環次數爲100,那麼每個線程發送100次請求。總請求數爲10*100=1000 。如果勾選了“永遠”,那麼所有線程會一直髮送請求,一到選擇停止運行腳本。 
(4)Delay Thread creation until needed直到需要時延遲線程的創建。 
(5)調度器:設置線程組啓動的開始時間和結束時間(配置調度器時,需要勾選循環次數爲永遠) 
持續時間(秒):測試持續時間,會覆蓋結束時間 
啓動延遲(秒):測試延遲啓動時間,會覆蓋啓動時間 
啓動時間:測試啓動時間,啓動延遲會覆蓋它。當啓動時間已過,手動只需測試時當前時間也會覆蓋它。 
結束時間:測試結束時間,持續時間會覆蓋它。

2、創建Http請求

在創建的線程組基礎上,添加HTTP請求

創建頁面如圖所示:

性能測試時:HTTP實現請選擇Java,點擊keepAlive,使用長連接進行測試(避免經常進行三次握手,影響測試準確性)。

Http請求主要參數詳解

(1)Web服務器 
協議:向目標服務器發送HTTP請求協議,可以是HTTP或HTTPS,默認爲HTTP 
服務器名稱或IP :HTTP請求發送的目標服務器名稱或IP 
端口號:目標服務器的端口號,默認值爲80 
(2)Http請求 
方法:發送HTTP請求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。 
路徑:目標URL路徑(URL中去掉服務器地址、端口及參數後剩餘部分) 
Content encoding :編碼方式,默認爲ISO-8859-1編碼,這裏配置爲utf-8

(3)同請求一起發送參數 
在請求中發送的URL參數,用戶可以將URL中所有參數設置在本表中,表中每行爲一個參數(對應URL中的 name=value),注意參數傳入中文時需要勾選“編碼”。

3、查看結果樹

在創建的線程組基礎上添加查看結果樹:

添加完後,展示結果如圖:

4、添加聚合報告

在線程組基礎上添加聚合報告,如圖:

展示結果如圖:

聚合報告參數詳解

(1)Label:每個 JMeter 的 element(例如 HTTP Request)都有一個 Name 屬性,這裏顯示的就是 Name 屬性的值 
(2)#Samples:請求數——表示這次測試中一共發出了多少個請求,如果模擬10個用戶,每個用戶迭代10次,那麼這裏顯示100 
(3)Average:平均響應時間——默認情況下是單個 Request 的平均響應時間,當使用了 Transaction Controller 時,以Transaction 爲單位顯示平均響應時間 
(4)Median:中位數,也就是 50% 用戶的響應時間 
(5)90% Line:90% 用戶的響應時間 
(6)Min:最小響應時間 
(7)Max:最大響應時間 
(8)Error%:錯誤率——錯誤請求數/請求總數 
(9)Throughput:吞吐量——默認情況下表示每秒完成的請求數(Request per Second),當使用了 Transaction Controller 時,也可以表示類似 LoadRunner 的 Transaction per Second 數 
(10)KB/Sec:每秒從服務器端接收到的數據量,相當於LoadRunner中的Throughput/Sec

一般而言,性能測試中我們需要重點關注的數據有: #Samples 請求數,Average 平均響應時間,Min 最小響應時間,Max 最大響應時間,Error% 錯誤率及Throughput 吞吐量。

三、完整步驟圖示

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