1.Jemter簡介
1.我們為什么使用Jmeter
開源,免費,基于Java撰寫,可集成到其他系統可拓展各個功能插件 支持介面測驗,
壓力(負載和壓力)測驗等多種功能,支持錄制回放, 入門簡單相較于自己撰寫框架
活其他開源工具,有較為完善的UI界面,便于介面除錯 多平臺支持,可在Linux,
Windows,Mac上運行,支持多協議
2.Jmeter作用
可以進行介面測驗、性能測驗、資料庫測驗
3.性能測驗是什么
基于協議模擬用戶發出請求,對服務器形成一定負載,來測驗服務器的性能指標
是否滿足要求,性能指標關注點:時間性能、空間性能
性能測驗定義:指通過測驗工具模擬多種正常、峰值以及例外負載條件來對系統的
各項性能指標進行測驗,
2.Jmeter的下載安裝配置啟動
1.jmeter的下載
Windows下Jmeter下載安裝登錄 http://jmeter.apache.org/download_jmeter.cgi ,
根據自己平臺,下載對應檔案

2.JAVA環境環境變數的配置
安裝JDK,配置環境變數(具體步驟不做介紹)

3.啟動Jmeter
方式1:在命令列中輸入jmeter
方式2:bin目錄下執行jmeter.bat(window)或者jmeter.sh(linux)
3.簡單模擬性能測驗
1.執行緒組
作用:模擬虛擬用戶
行程: 一個正在執行的程式對應一個行程
執行緒: 一個行程有多個執行執行緒
執行緒組: 按照執行緒性質對執行緒分組
者關系: 一個行程有多個執行緒組,一個執行緒組有多個執行緒
添加執行緒組


1.程組主要包含三個引數:執行緒數、準備時長(Ramp-Up Period(in seconds))、
回圈次數,
2.執行緒數:虛擬用戶數,一個虛擬用戶占用一個執行緒,設定多少虛擬用戶數在這里
也就是設定多少個 執行緒數,
3.準備時長(秒):設定的虛擬用戶數需要多長時間全部啟動,如果執行緒數為20 ,
準備時長為10 ,那么需要10秒鐘啟動20個執行緒,也就是每秒鐘啟動2個執行緒,
4.回圈次數:每個執行緒發送請求的次數,如果執行緒數為20 ,回圈次數為100 ,
那么每個執行緒發送 100次請求,總請求數為20*100=2000 ,如果勾選了“永遠”,
那么所有執行緒會一直發送請求,一到選擇停止 運行腳本,
5.調度器:設定執行緒組啟動的開始時間和結束時間(配置調度器時,需要勾選回圈次數為永遠)
6.持續時間(秒):測驗持續時間
7.啟動延遲(秒):測驗延遲啟動時間
2.sampler(采樣器)
作用:向服務器發送請求,記錄回應資訊,記錄回應時間的最小單元(http,https,ftp,jdbc等)
添加采樣器


| 名稱 | 本屬性用于標識一個取樣器,建議使用一個有意義的名稱, |
|---|---|
| 注釋 | 對于測驗沒有任何作用,僅用戶記錄用戶可讀的注釋資訊, |
| 服務器名稱或IP | HTTP請求發送的目標服務器名稱或IP地址, |
| 埠號 | 目標服務器的埠號, |
| 方法 | 發送HTTP請求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等, |
| Content encoding | 內容的編碼方式,默認值為iso8859 |
| 路徑 | 目標URL路徑(不包括服務器地址和埠) |
注意事項: 1:引數傳遞中Parameters和Body Data不能同時使用,必須要保證其中
至少一個為空,否則提示錯誤 2:在傳遞的引數中,介面引數名和引數值兩邊不能有
空格,否則會報錯
3.監聽器
作用:監聽器可以動態的監控JMeter測驗執行的程序,實時查看測驗結果
添加監聽器


| 通程序看結果樹,我們可以看到每個請求的結果,其中紅色的是出錯的請求,綠色的為通過 |
|---|
| Thread Name:執行緒組名稱 |
| Sample Start: 啟動開始時間 |
| Load time:加載時長 |
| Latency:等待時長 |
| Size in bytes:發送的資料總大小 |
| Headers size in bytes:發送資料的其余部分大小 |
| Sample Count:發送統計 |
| Error Count:互動錯誤統計 |
| Response code:回傳碼 |
| Response message:回傳資訊 |
| Response headers:回傳的頭部資訊 |


| lable:對應每一個http請求,顯示的是http請求的Name,如百度http請求name為baidu |
|---|
| #Samples:表示這一次的測驗中一共發出了多少請求,如上圖所示,sougou和baidu的http請求每個都發出30個請求 |
| Average:平均回應時間,指的是所有的請求的平均回應時間,如上圖的30個請求的總的回應時間除以30得出的平均回應時間,默認的情況下是單個請求的平均回應時間,但當使用了“事務控制器”時,則以事物為單位顯示平均回應時間 |
| Median:中位數,也就是50%用戶的回應時間 |
| 90%Line:90%用戶的回應時間 |
| Min:最小回應時間 |
| Max:最大的回應時間 |
| Error%:本次測驗中出現錯誤的請求的數量/請求的總數,如上圖所示,本次的測驗中,sougou的http請求66.6%的請求出錯,而baidu的請求則沒有出錯的請求 |
| Throughput:吞吐量,默認情況下表示每秒完成的請求數,如上圖所示,每秒完成的請求數分別為6.6個每秒,6.2個每秒 |
| Recived KB/Sec:每秒從服務器端接收到的資料量,以kb為計算的單位 |
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/300221.html
標籤:其他
