Apache JMeter是Apache組織開發的基於Java的壓力測試工具。用於對軟件作壓力測試,它最初被設計用於Web應用測試,但後來擴展到其餘測試領域。 它能夠用於測試靜態和動態資源,例如靜態文件、Java 小程序服務、CGI 腳本、Java 對象、數據庫、FTP 服務器, 等等。JMeter 能夠用於對服務器、網絡或對象模擬巨大的負載,來自不一樣壓力類別下測試它們的強度和分析總體性能。另外,JMeter可以對應用程序作功能/迴歸測試,經過建立帶有斷言的腳原本驗證你的程序返回了你指望的結果。爲了最大限度的靈活性,JMeter容許使用正則表達式建立斷言。正則表達式
JMeter是業界比較優秀的測試軟件,最基本的功能能夠當成postman使用,而後進階點就是給接口作併發測試,這裏的併發是指真正意義的併發,像postman之類的軟件所謂的併發本質上仍是串行執行的。再高階的用法就是經過腳原本完成多服務器的壓測,由於瞭解有限,更多高級用法得在實際中須要用到纔有機會去學習。數據庫
環境爲Win10,jdk版本1.8以上apache
官網下載地址
小程序
直接把下載好的壓縮包解壓到想要安裝的位置便可。解壓便可使用(前提是系統已經配好jdk環境)服務器
解壓能夠看到JMeter的基本目錄,大體能夠了解下。網絡
JMeter支持插件擴展,有更多的功能均可以用插件來實現。併發
使用插件有兩種方法,工具
一是使用什麼插件就下載對應jar包放到%jmeter%\lib\ext路徑下。post
二是使用官網提供的插件管理器,而後在管理器裏選擇所需插件進行安裝。性能
這裏介紹第二種方法,先去下載插件管理器 jmeter-plugins,而後把下載好的jmeter-plugins-manager-1.4.jar 放到%jmeter%\lib\ext下重啓就能夠。
打開JMeter以後,在GUI界面選擇 Options -> 最底下 Plugins Manager 便可打開插件管理器進行使用。
在此簡單介紹下JMeter的運行背景,使用GUI界面執行測試會大量消耗系統資源,而使用命令行工具執行測試腳本則可以縮減所需的系統資源,因此通常的用法是先在GUI界面建立好測試計劃的腳本,而後經過命令行去執行。
打開%jmeter%\bin文件夾,裏面有sh和bat兩種格式的腳本,分別對應Linux系統和Win系統的。打開jmeter.bat就會啓動一個命令窗口和GUI界面窗口,二者是共存的,不能關閉,使用時把命令窗口最小化便可。
命令窗口:
GUI界面窗口:
英文的方便對照官方文檔使用,但想切換中文也是能夠的,在以前的版本中使用中文須要下載語言包本身手動加載,在此版本就不須要了,直接在GUI界面窗口操做 Options -> Choose Language -> Chinese (Simplified)便可
而後就切換到中文了。
下文介紹的組件是根據我的學習到的組件而去使用的,因此做爲開發人員去使用JMeter可能比不上專業使用,僅做介紹瞭解。
能夠理解爲一個項目,就是一個最大的根目錄,裏面包括多種真正工做的測試組件。
添加:線程(用戶) -> 線程組
也稱用戶組,是進行測試的基本單位, 也能夠理解爲測試計劃執行的開始點,它能夠設置線程信息來模擬併發。
添加: 配置元件 -> 計數器
用於配置一些計數做用的原件,好比我測接口,須要傳一個ID,ID每次遞增1,設置好以後,直接在請求參數裏使用 ${引用名稱}便可使用。
添加:監聽器 -> 聚合報告
通常用於顯示Web接口測試的,它裏面各項數據都反應了接口的狀況。
各項數據含義(注意:時間單位爲ms):
Label
:每一個請求的名字,可理解爲每一個接口請求的Name屬性。
樣本(Samples)
:表示一次測試中一共發起了多少個請求,若是按照上面設置的持續30s,每秒100個併發量,那麼就是30*100=3000個請求。
平均值(Average)
:平均響應時間,默認狀況是單個請求的平均響應時間。
中位數(Median)
:中位數,也就是一半的用戶的響應時間。
90%百分位和95%百分位(90% Line 和 95% Line)
:意指90%和95%的用戶的響應時間,關於爲何是這兩個百分比的用戶數能夠自行了解下。
最小值(Min)
:最小響應時間。
最大值(Max)
:最大響應時間。
異常%(Error%)
:錯誤率,指一次測試中出現錯誤的請求/總請求數。
吞吐量(Throughput)
:默認狀況表示每秒完成的請求數。
添加:監聽器 -> 響應時間圖
這個圖沒記錯的話是自帶的,但好像看起來不太好用,因此其實用別的插件生成的圖更生動些。
添加:監聽器 -> 察看結果樹
不懂是否是由於翻譯問題,可能把查看寫成了察看,總之是一個意思。這個組件能夠看到請求的發送和返回信息,當你執行測試後,這裏會自動填充請求數據就能夠看了。
添加:取樣器 -> Http 請求
這裏就是最經常使用的組件了,模擬接口測試請求,填寫好服務器IP地址和端口號,而後填寫請求路徑,設置好入參,就能夠用了。
添加:監聽器 -> jp@gc - Transactions per Second
想要查看TPS得先裝插件,可用插件管理器安裝。
而後添加該組件時,選擇TPS便可,
這些組件也是等測試完成有數據以後纔會繪製圖表,未執行測試以前是不會有東西的。
ps:本次介紹的是我的使用到的一些簡單組件,還有不少好用的東西還沒接觸到,後續有機會能夠繼續學習使用。
在此學習瞭解到了JMeter的快速入門,包括下載安裝、一些簡單的使用。其實可能連入門都不算,JMeter仍是很複雜的,好比工做原理、配置文件、日誌管理、定時器、斷言、命令行執行等更高級的功能,但願在空閒時多去了解下,多掌握一些技能。
文章是在本身電腦typora寫好移植過來的,由於版塊問題,致使內容換行很彆扭。 並且有些圖復現不了,只能用本地上面的截圖,因此很模糊。