JMeter的簡單使用

1、初識JMeter

1. 簡介(摘自百度百科)

Apache JMeter是Apache組織開發的基於Java的壓力測試工具。用於對軟件作壓力測試,它最初被設計用於Web應用測試,但後來擴展到其餘測試領域。 它能夠用於測試靜態和動態資源,例如靜態文件、Java 小程序服務、CGI 腳本、Java 對象、數據庫、FTP 服務器, 等等。JMeter 能夠用於對服務器、網絡或對象模擬巨大的負載,來自不一樣壓力類別下測試它們的強度和分析總體性能。另外,JMeter可以對應用程序作功能/迴歸測試,經過建立帶有斷言的腳原本驗證你的程序返回了你指望的結果。爲了最大限度的靈活性,JMeter容許使用正則表達式建立斷言。正則表達式

2. 自述

JMeter是業界比較優秀的測試軟件,最基本的功能能夠當成postman使用,而後進階點就是給接口作併發測試,這裏的併發是指真正意義的併發,像postman之類的軟件所謂的併發本質上仍是串行執行的。再高階的用法就是經過腳原本完成多服務器的壓測,由於瞭解有限,更多高級用法得在實際中須要用到纔有機會去學習。數據庫

2、下載安裝JMeter

環境爲Win10,jdk版本1.8以上apache

1. 下載

官網下載地址
小程序

2. 安裝

直接把下載好的壓縮包解壓到想要安裝的位置便可。解壓便可使用(前提是系統已經配好jdk環境)服務器

3. 目錄

解壓能夠看到JMeter的基本目錄,大體能夠了解下。網絡

4. 插件

JMeter支持插件擴展,有更多的功能均可以用插件來實現。併發

使用插件有兩種方法,工具

​ 一是使用什麼插件就下載對應jar包放到%jmeter%\lib\ext路徑下。post

​ 二是使用官網提供的插件管理器,而後在管理器裏選擇所需插件進行安裝。性能

這裏介紹第二種方法,先去下載插件管理器 jmeter-plugins,而後把下載好的jmeter-plugins-manager-1.4.jar 放到%jmeter%\lib\ext下重啓就能夠。

打開JMeter以後,在GUI界面選擇 Options -> 最底下 Plugins Manager 便可打開插件管理器進行使用。

3、基本使用

在此簡單介紹下JMeter的運行背景,使用GUI界面執行測試會大量消耗系統資源,而使用命令行工具執行測試腳本則可以縮減所需的系統資源,因此通常的用法是先在GUI界面建立好測試計劃的腳本,而後經過命令行去執行。

1. 運行

打開%jmeter%\bin文件夾,裏面有sh和bat兩種格式的腳本,分別對應Linux系統和Win系統的。打開jmeter.bat就會啓動一個命令窗口和GUI界面窗口,二者是共存的,不能關閉,使用時把命令窗口最小化便可。

命令窗口:

GUI界面窗口:

2. 語言切換

英文的方便對照官方文檔使用,但想切換中文也是能夠的,在以前的版本中使用中文須要下載語言包本身手動加載,在此版本就不須要了,直接在GUI界面窗口操做 Options -> Choose Language -> Chinese (Simplified)便可

而後就切換到中文了。

3. 組件介紹

下文介紹的組件是根據我的學習到的組件而去使用的,因此做爲開發人員去使用JMeter可能比不上專業使用,僅做介紹瞭解。

3.1 測試計劃 (Test Plan)

能夠理解爲一個項目,就是一個最大的根目錄,裏面包括多種真正工做的測試組件。

3.2 線程組 (Thread Group)

添加:線程(用戶) -> 線程組

也稱用戶組,是進行測試的基本單位, 也能夠理解爲測試計劃執行的開始點,它能夠設置線程信息來模擬併發。

3.3 計數器 (Counter)

添加: 配置元件 -> 計數器

用於配置一些計數做用的原件,好比我測接口,須要傳一個ID,ID每次遞增1,設置好以後,直接在請求參數裏使用 ${引用名稱}便可使用。

3.4 聚合報告 (Aggregate Report)

添加:監聽器 -> 聚合報告

通常用於顯示Web接口測試的,它裏面各項數據都反應了接口的狀況。

各項數據含義(注意:時間單位爲ms):

Label:每一個請求的名字,可理解爲每一個接口請求的Name屬性。

樣本(Samples):表示一次測試中一共發起了多少個請求,若是按照上面設置的持續30s,每秒100個併發量,那麼就是30*100=3000個請求。

平均值(Average):平均響應時間,默認狀況是單個請求的平均響應時間。

中位數(Median):中位數,也就是一半的用戶的響應時間。

90%百分位和95%百分位(90% Line 和 95% Line):意指90%和95%的用戶的響應時間,關於爲何是這兩個百分比的用戶數能夠自行了解下。

最小值(Min):最小響應時間。

最大值(Max):最大響應時間。

異常%(Error%):錯誤率,指一次測試中出現錯誤的請求/總請求數。

吞吐量(Throughput):默認狀況表示每秒完成的請求數。

3.5 響應時間圖 (Response Time Graph)

添加:監聽器 -> 響應時間圖

這個圖沒記錯的話是自帶的,但好像看起來不太好用,因此其實用別的插件生成的圖更生動些。

3.6 察看結果樹 (View Results Tree)

添加:監聽器 -> 察看結果樹

不懂是否是由於翻譯問題,可能把查看寫成了察看,總之是一個意思。這個組件能夠看到請求的發送和返回信息,當你執行測試後,這裏會自動填充請求數據就能夠看了。

3.7 Http請求(Http Request)

添加:取樣器 -> Http 請求

這裏就是最經常使用的組件了,模擬接口測試請求,填寫好服務器IP地址和端口號,而後填寫請求路徑,設置好入參,就能夠用了。

3.8 TPS

添加:監聽器 -> jp@gc - Transactions per Second

想要查看TPS得先裝插件,可用插件管理器安裝。

而後添加該組件時,選擇TPS便可,


這些組件也是等測試完成有數據以後纔會繪製圖表,未執行測試以前是不會有東西的。

ps:本次介紹的是我的使用到的一些簡單組件,還有不少好用的東西還沒接觸到,後續有機會能夠繼續學習使用。

4、 小結

在此學習瞭解到了JMeter的快速入門,包括下載安裝、一些簡單的使用。其實可能連入門都不算,JMeter仍是很複雜的,好比工做原理、配置文件、日誌管理、定時器、斷言、命令行執行等更高級的功能,但願在空閒時多去了解下,多掌握一些技能。

文章是在本身電腦typora寫好移植過來的,由於版塊問題,致使內容換行很彆扭。 並且有些圖復現不了,只能用本地上面的截圖,因此很模糊。

相關文章
相關標籤/搜索