一、測試工具:
JMeter
二、JMeter介紹:
Apache JMeter是Apache組織開發的基於Java的壓力測試工具。用於對軟件做壓力測試,它最初被設計用於Web應用測試,但后來擴展到其他測試領域。
三、Java環境的安裝與配置:
(1)因為JMeter是使用JAVA寫的,所以使用JMeter之前,先安裝JAVA環境,
oracle官網下載JDk https://www.oracle.com/technetwork/java/javase/downloads/index.html
配置變量
系統變量→新建 JAVA_HOME 變量 。 變量值填寫jdk的安裝目錄(本人是 E:\Java\jdk1.7.0)
系統變量→尋找 Path 變量→編輯
在變量值最后輸入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
(注意原來Path的變量值末尾有沒有;號,如果沒有,先輸入;號再輸入上面的代碼)
系統變量→新建 CLASSPATH 變量
變量值填寫 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一點)
系統變量配置完畢
測試jdk是否安裝成功,可在【開始】中搜索cmd,輸入【java -version】
四、JMeter下載與使用:
1.JMeter下載地址:在官網 http://jmeter.apache.org/
2.解壓下載的二進制包,使用cmd命令進入bin目錄,使用jmeter.bat啟動程序。(注意直接雙擊jmeter.bat無法啟動時需要使用Window+R,輸入cmd,然后進入bin目錄如下)
3.啟動之后會有兩個窗口,一個cmd窗口,一個JMeter的 GUI
上面的意思就是:不要使用GUI運行壓力測試,GUI僅用於壓力測試的創建和調試;執行壓力測試請不要使用GUI。使用下面的命令來執行測試:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
五、創建測試
1.創建線程組
在“測試計划”上右鍵 【添加】-->【Threads(Users)】-->【線程組】
2.設置線程數和循環次數。我這里設置線程數為500,循環一次。
3..創建Http請求
在“線程組”右鍵 【添加-】->【samlper】-->【HTTP 請求】
4.添加察看結果樹和聚合報告
在我們剛剛創建的線程組上右鍵 【添加】-->【監聽器】-->【察看結果樹】。添加聚合報告,右鍵 【添加】-->【監聽器】-->【聚合報告】。
直接添加,然后點擊運行按鈕就可以看到結果了。
結果樹分析:
通過察看結果樹,我們可以看到每個請求的結果,其中紅色的是出錯的請求,綠色的為通過。
Thread Name(線程組名稱): 線程組 1-24
Sample Start( 啟動開始時間): 2019-02-15 15:00:14 CST
Load time(加載時長): 290
Connect Time:(連接時長) 86
Latency(等待時長): 174
Size in bytes(發送的數據總大小): 2212
Sent bytes:821
Headers size in bytes(發送數據的其余部分大小): 1162
Body size in bytes: 1050
Sample Count(發送統計): 1
Error Count(錯誤統計): 0
Data type ("text"|"bin"|""): text
Response code(返回狀態碼): 200
Response message(返回信息): OK
這里綠色的就說明請求是通過的,返回值是200,如果出現紅色的×就說明請求失敗,這時候可以通過右邊的取樣器結果和響應數據來查看結果。
聚合報告分析:
Sample:本次測試場景共運行多少線程;
Average:平均響應時間;
Median:統計意義上的響應時間中值;
90% line:所有線程中90%的線程響應時間都小於xx的值;
Min:響應最小時間;
Max:響應最大時間;
Error:出錯率;
Throughput - 吞吐量以“requests/second、requests /minute、 requests /hour”來衡量。 時間單位已經被選取為second,所以,顯示速率至少是1.0,即每秒1個請求。 當吞吐量被保存到CVS文件時,采用的是requests/second,所以30.0 requests/second 在CVS中被保存為0.5
Kb/sec - 以Kilobytes/seond來衡量的吞吐量
六、測試結果:
(1)50個用戶同時訪問企業用戶會議室預定頁面,平均響應時間是0.146秒,最大的響應時間0.387秒,最小的響應時間是0.096秒,錯誤率為0。
(2)100個用戶同時訪問企業用戶會議室預定頁面,平均響應時間是2.295秒,最大的響應時間8.132秒,最小的響應時間是0.425秒,錯誤率為0。