前言
本篇博客主要是介紹JMeter并發(fā)測(cè)試工具的安裝及實(shí)際使用。
所有博客文件目錄索引:博客目錄索引(持續(xù)更新)
學(xué)習(xí)資料
博文:
- JMeter 實(shí)戰(zhàn)教程 - 性能測(cè)試、壓力測(cè)試、負(fù)載測(cè)試、loadtesting
- Jmeter 用表格查看結(jié)果 詳解
- 【jmeter】jmeter測(cè)試網(wǎng)站QPS
視頻:
- Jmeter5.x壓測(cè)接口實(shí)戰(zhàn)-接口性能優(yōu)化前后QPS對(duì)比
- jmeter壓測(cè)實(shí)戰(zhàn)-并發(fā)場(chǎng)景設(shè)計(jì):實(shí)戰(zhàn)場(chǎng)景,但是這里面用到的插件需要自行尋找。
- 全套性能測(cè)試|jmeter|TPS|Jmeter插件管理|壓力測(cè)試
知識(shí)點(diǎn)整理
參數(shù):最重要的是qps以及tps
- QPS:Query Per Second 每秒查詢率。是一臺(tái)查詢服務(wù)器每秒能夠處理的查詢次數(shù)
- HPS:每秒點(diǎn)擊數(shù)
- TPS:每秒交易數(shù),每秒事物數(shù)。(一個(gè)完整的業(yè)務(wù)做完)
其他關(guān)注的指標(biāo):
- 最大響應(yīng)時(shí)間:請(qǐng)求從發(fā)出到返回結(jié)果的最大時(shí)間。
- 發(fā)n次請(qǐng)求取最大。
- 最少響應(yīng)時(shí)間:請(qǐng)求從發(fā)出到返回結(jié)果的最少時(shí)間。
- 90%響應(yīng)時(shí)間:例如發(fā)送一萬個(gè)請(qǐng)求,90%都1秒返回過來了,說明性能很好。
核心三個(gè)指標(biāo):吞吐量、響應(yīng)時(shí)間、錯(cuò)誤率
- 吞吐量大說明支持大并發(fā)。
- 響應(yīng)時(shí)間短說明性能好
- 錯(cuò)誤率指的是多個(gè)請(qǐng)求出現(xiàn)的比例。
一、安裝JMeter
Jmeter官網(wǎng)
下載解壓后,進(jìn)入到bin目錄下:
二、永久修改jmeter的配置
參考:JMeter——》調(diào)整界面比例、字體大小
找到j(luò)meter.properties配置文件:
直接在配置文件最底部加上如下內(nèi)容:即可覆蓋上面沒有設(shè)置或者已經(jīng)設(shè)置的內(nèi)容
# 自定義新增覆蓋上上面的
# 修改默認(rèn)語言
language=zh_CN
# 修改字體格式與大小
jsyntaxtextarea.font.family=Hack
jsyntaxtextarea.font.size=25
# 修改模式、圖片大小
jmeter.hidpi.mode=true
# ##:修改右側(cè)參數(shù)比例:factor=1.2,指放大1.2倍
jmeter.hidpi.scale.factor=1.5
# ##:修改工具欄比例:可選:默認(rèn)=22x22, 22x22,32x32;
jmeter.toolbar.icons.size=48x48
# # 修改左側(cè)樹結(jié)構(gòu)比例
jmeter.tree.icons.size=32x32
接著打開jmeter后若是配置不生效:隨意點(diǎn)擊外觀下的一個(gè)主題,就能夠生效了
你也可以勾選日志查看,看對(duì)應(yīng)調(diào)整的參數(shù)是哪個(gè),從而來進(jìn)行自定義配置。
三、快速上手
3.1、實(shí)戰(zhàn)測(cè)試
學(xué)習(xí)教程:jmeter壓測(cè)實(shí)戰(zhàn)-并發(fā)場(chǎng)景設(shè)計(jì)
創(chuàng)建線程組與需求說明
創(chuàng)建線程組
首先肯定要添加一個(gè)線程組來進(jìn)行測(cè)試,添加方式如下:
循環(huán)次數(shù)
一般為1,Ramp-Up
就是準(zhǔn)備指定線程數(shù)的時(shí)間(若是你使用的線程數(shù)很大那么就需要設(shè)置n秒來進(jìn)行一個(gè)提前準(zhǔn)備與分配內(nèi)存)。
需求說明
需求:測(cè)試一個(gè)接口http://127.0.0.1:8999/api/common/members
我們首先添加一個(gè)HTTP請(qǐng)求:
然后根據(jù)接口的url來進(jìn)行填寫:
接著依次添加對(duì)應(yīng)的監(jiān)聽器,可以來看我們的請(qǐng)求結(jié)果:
添加好效果如下:
場(chǎng)景一:模擬2000個(gè)用戶訪問(非并發(fā))
接著幾個(gè)報(bào)告結(jié)果就都會(huì)有對(duì)應(yīng)的一個(gè)測(cè)試結(jié)果。
**為什么說不是并發(fā)?**看下表格查看結(jié)果報(bào)告
可以看到這個(gè)過程是55-59秒,也就是說這樣子測(cè)試是直接一個(gè)個(gè)線程串行執(zhí)行的,而不是并發(fā)在固定時(shí)間內(nèi)發(fā)送出去:
場(chǎng)景二:模擬2000個(gè)用戶訪問(并發(fā))
清空上一輪的結(jié)果
依次將上一次的結(jié)果清楚繼續(xù)下一次測(cè)試。
測(cè)試
1、設(shè)置Ramp-Up時(shí)間
目的:由于線程數(shù)之后增大,需要根據(jù)實(shí)際情況來設(shè)置這個(gè)準(zhǔn)備時(shí)間秒數(shù),這個(gè)秒數(shù)指的是在指定時(shí)間內(nèi)來準(zhǔn)備指定的線程數(shù),你可以理解提前預(yù)備準(zhǔn)備。
2、添加一個(gè)同步定時(shí)器
設(shè)置模擬用戶組數(shù)量為2000,這樣的話在這一組的2000個(gè)就會(huì)在同一時(shí)間內(nèi)進(jìn)行并發(fā)發(fā)送請(qǐng)求:
3、測(cè)試
準(zhǔn)備好預(yù)備動(dòng)作后,來進(jìn)行啟動(dòng):
右上角會(huì)有一個(gè)預(yù)備時(shí)間:
此時(shí)再來看下根據(jù)表格查看結(jié)果:你此時(shí)可以看到2000個(gè)請(qǐng)求幾乎是在同一時(shí)間內(nèi)發(fā)送出去的
結(jié)果查看
根據(jù)對(duì)應(yīng)多個(gè)報(bào)告來查看結(jié)果:
3.2、各類報(bào)告
常用說明:
匯總報(bào)告
打開方式:
參數(shù)說明:
樣本:總共請(qǐng)求數(shù)
平均值:平均響應(yīng)時(shí)間
最小值:最小響應(yīng)時(shí)間
最大值:最大響應(yīng)時(shí)間
標(biāo)準(zhǔn)偏差:每個(gè)值與平均值的平均差度
異常:所有請(qǐng)求發(fā)送多少異常
吞吐量:很重要,根據(jù)它來衡量每個(gè)接口的并發(fā)能力
聚合報(bào)告
打開方式:
說明:
中位數(shù):反映我們普遍的請(qǐng)求,哪個(gè)響應(yīng)時(shí)間響應(yīng)成功的。
四、Jmeter插件使用
性能監(jiān)控:
- 性能測(cè)試工具: 用什么工具來做性能測(cè)試
- 性能測(cè)試場(chǎng)景設(shè)計(jì): 用什么方法模擬我們性能測(cè)試需求
- 性能監(jiān)控:監(jiān)控我們性能測(cè)試過程,收集性能測(cè)試過程中數(shù)據(jù),擁有性能分析----主要時(shí)收集被測(cè)服務(wù)器的資源使用情況被測(cè)服務(wù)器的資源:
- 硬件資源: cpu、內(nèi)存、io、網(wǎng)絡(luò)
- 軟件資源: tomcat、jvm、數(shù)據(jù)庫、連接池、中間件…
參考:Jmeter常用插件下載
jmeter插件下載地址:https://jmeter-plugins.org/wiki/Start/
客戶端插件:JMeterPlugins-Standard、JMeterPlugins-Extras。
服務(wù)端插件:ServerAgent。
4.1、客戶端插件使用
步驟1、進(jìn)入插件官網(wǎng)進(jìn)行下載JMeterPlugins-Standard、JMeterPlugins-Extras
jmeter-plugins
步驟2、解壓得到j(luò)ar包添加到j(luò)meter的ext目錄中
解壓后分別在ext目錄中拿到JMeterPlugins-Extras.jar
、JMeterPlugins-Standard.jar
將這兩個(gè)插件添加到對(duì)應(yīng)jmeter安裝目錄下的lib/ext
中即可。
接著我們重啟jmeter來添加器看看,若是有下面內(nèi)容表示添加成功:
經(jīng)常使用的有TPS…。
4.2、服務(wù)端監(jiān)控
建議
建議:使用這個(gè)插件檢測(cè)功能最好使用jmeter3.1版本,否則在執(zhí)行測(cè)試時(shí)就會(huì)出現(xiàn)報(bào)錯(cuò)
- 4.5 Jmeter5.3監(jiān)控Linux資源報(bào)錯(cuò):Uncaught Exception java.lang.NoSuchMethodError: org.apache.jmeter.samplers.
- Jmeter 3.1版本之后暫時(shí)沒有setFormatter函數(shù)功能
這里貼一個(gè)jmeter3.1版本:jmeter
如何找到這個(gè)網(wǎng)址?
使用方式
原理:在你目標(biāo)監(jiān)控的服務(wù)器端運(yùn)行ServerAgent
程序,默認(rèn)是4444端口,接著在客戶端使用一個(gè)監(jiān)聽器jp@gc - PerfMon Metrics Collector
,添加一個(gè)指定監(jiān)聽地址記錄即可之后請(qǐng)求時(shí)監(jiān)聽。
ServerAgent-2.2.1.zip
下載地址:ServerAgent-2.2.1。
解壓之后得到該目錄:
1、服務(wù)端啟動(dòng)監(jiān)控
Windows
:雙擊ServerAgent.bat啟動(dòng)。
Linux
:運(yùn)行指定端口,若是不指定默認(rèn)就是4444端口。
- 對(duì)應(yīng)命令:
./startAgent.sh --udp-port 0 --tcp-port 5689
2、客戶端進(jìn)行監(jiān)控
添加一個(gè)監(jiān)控器:
添加監(jiān)控地址:
然后我們直接運(yùn)行這個(gè)接口測(cè)試即可:
參考文章
[1] 基礎(chǔ)教程:【測(cè)試基礎(chǔ)】jmeter工具介紹及使用方法、jmeter工具使用介紹
[2] 插件:Jmeter常用插件下載文章來源:http://www.zghlxwxcb.cn/news/detail-783344.html
[3] 性能監(jiān)控(SeverAgent工具與jmeter配合使用)文章來源地址http://www.zghlxwxcb.cn/news/detail-783344.html
到了這里,關(guān)于JMeter詳細(xì)使用教程及實(shí)際案例的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!