Jmeter

一. 性能測試

1.0 為什么要進行性能測試踊挠?

評估當前系統(tǒng)的能力

尋找性能瓶頸,優(yōu)化系統(tǒng)性能

評估軟件是否滿足未來的需要

招聘需要

1.1 什么是性能

時間:系統(tǒng)處理用戶請求的響應時間

資源:系統(tǒng)運行過程中适肠,系統(tǒng)資源的消耗情況

1.2. 性能測試是什么

1.2.1 廣義定義

基于協(xié)議模擬用戶發(fā)出請求,對服務器形成一定負載候引,來測試服務器的性能指標是否滿足要求性能指標關注點:時間性能侯养、空間性能性能測試與頁面無關

1.2.1 狹義定義

指通過自動化的測試工具模擬多種正常、峰值以及異常負載條件來對系統(tǒng)的各項性能指標進行測試澄干。

1.3 功能和性能測試

不同

功能測試驗證系統(tǒng)的功能需求規(guī)格蔚润,聚焦功能。

性能測試驗證系統(tǒng)的業(yè)務性需求場景辐啄,聚焦時間和資源。

關系

一般項目中惧笛,先功能測試通過后,后進行性能測試逞泄。

1.4 性能測試的分類

1.4.1 基準測試

狹義:單用戶測試

廣義:建立基準線徐紧,當系統(tǒng)軟硬件環(huán)境發(fā)生變化之后再進行一次基準測試以確定變化對性能的影響。

1.4.2 負載測試

概念

通過逐步增加系統(tǒng)負載炭懊,確定在滿足性能指標的情況下,找出系統(tǒng)所能承受最大負載量的測試拂檩。

作用

系統(tǒng)最大負載量達到用戶要求時侮腹,系統(tǒng)才能正式上線使用。

案例

電梯行業(yè)規(guī)范:電梯從1樓到5樓的運行時間不超過24s稻励。

注意

通過負載測試父阻,可以確定系統(tǒng)的最大負載量和極限負載量

系統(tǒng)對外宣稱的最大負載量

負載測試的時間一般為1-2小時

1.4.3 穩(wěn)定性測試

概念:在服務器穩(wěn)定運行(用戶正常業(yè)務負載下)的情況進行長時間測試(1天-一周等),并最終保證服務器能滿足線上業(yè)務需求望抽。

系統(tǒng)在用戶需求的業(yè)務負載下運行達到規(guī)定的時間時加矛,系統(tǒng)才能正式上線使用。

1.4.4 壓力測試

概念:在強負載下的測試煤篙,查看系統(tǒng)在峰值下是否功能隱患斟览、系統(tǒng)是否具有良好的容錯能力和可恢復的能力。

測試場景

高負載下的長時間穩(wěn)定性壓力測試 (如:B-C區(qū)間內(nèi)進行24/3*24小時長時間測試)

極限負載下的破壞性壓力測試(如:C-D區(qū)間內(nèi)進行測試)

1.4.5 并發(fā)測試

概念:在極短時間內(nèi)辑奈,發(fā)送多個請求苛茂,來驗證服務器對并發(fā)的處理能力。

應用場景

特定的活動場景:搶紅包鸠窗、秒殺妓羊、搶購等。

與負載測試對比:

負載測試:主要目的是測試高負載情況下稍计,對系統(tǒng)資源的消耗躁绸,是否會耗盡的問題(雙11活動)

并發(fā)測試:主要目的是測試極短時間內(nèi),并發(fā)請求時臣嚣,系統(tǒng)資源爭搶的問題(搶紅包净刮、秒殺)

1.5 性能測試的指標

1.5.1 響應時間

指從客戶端發(fā)起請求開始,到客戶端接收到結果的總時間

包括:服務器處理時間 + 網(wǎng)絡傳輸時間

1.5.2 并發(fā)用戶數(shù)

某一時刻同時向服務器發(fā)送請求的用戶數(shù)

1.5.3 吞吐量(Throughout)

1.概念:單位時間內(nèi)處理客戶端的請求數(shù)量茧球,直接體現(xiàn)軟件系統(tǒng)能能承載能力庭瑰。

吞吐量單位分類

1.5.4 QPS

QPS(Query Per Second)每秒查詢數(shù),即控制服務器每秒處理的指定請求的數(shù)量抢埋。

1.5.5 TPS

TPS(Transaction Per Second)每秒事務數(shù)弹灭,即控制服務器每秒處理事務請求的數(shù)量督暂。

如:支付請求事務=查詢用戶余額請求+校驗支付安全請求+發(fā)送支付請求

每秒處理查詢用戶余額15請求,每秒處理校驗支付安全15個請求穷吮,每秒處理發(fā)送支付15個請求

支付tsp為15

1.5.6 點擊數(shù)

所有的頁面元素(如:圖片逻翁、鏈接、框架等)的請求總數(shù)

注意:

點擊數(shù)是請求數(shù)捡鱼,不是頁面上的一次點擊

1.5.7 錯誤率

指系統(tǒng)在負載情況下八回,失敗業(yè)務的概率

注意:

錯誤率是性能指標,是高負載下的失敗業(yè)務的概率

-隨機bug是功能bug驾诈,先解決隨機bug才能進行性能測試

1.5.8 資源利用率

概念:系統(tǒng)各種資源的使用情況缠诅,率=資源使用量/總資源可用量x100%

常見資源指標

CPU使用率:不高于75%-85%

內(nèi)存大小使用率:不高于80%

磁盤IO(速率):不高于90%

網(wǎng)路(速率):不高于80%

二. Jmeter簡介

2.1. 我們?yōu)槭裁词褂肑meter

開源,免費乍迄,基于Java編寫管引,可集成到其他系統(tǒng)可拓展各個功能插件

支持接口測試,壓力(負載和壓力)測試等多種功能闯两,支持錄制回放褥伴,

入門簡單相較于自己編寫框架活其他開源工具,有較為完善的UI界面漾狼,便于接口調(diào)試

多平臺支持重慢,可在Linux,Windows逊躁,Mac上運行似踱,支持多協(xié)議

2.2. Jmeter的作用

接口測試? 面試說postman,因為方便好用稽煤。

性能測試? jmeter屯援,也可以用postman(runner),但是沒有性能指標

數(shù)據(jù)庫測試

2.3. Jmeter怎么用

Windows下Jmeter下載安裝念脯,登錄?狞洋,根據(jù)自己平臺,下載對應文件百度去查

2.4. 安裝JAVA環(huán)境

安裝JDK绿店,配置環(huán)境變量

將下載Jmeter文件解壓吉懊,打開/bin/jmeter.bat

3.1.2. 線程組主要包含三個參數(shù):

線程數(shù)、準備時長(Ramp-Up Period(in seconds))假勿、循環(huán)次數(shù)借嗽。

3.1.3.? 線程數(shù):

虛擬用戶數(shù)。一個虛擬用戶占用一個線程转培。設置多少虛擬用戶數(shù)在這里也就是設置多少個線程數(shù)恶导。

3.1.4.? 準備時長(秒):

設置的虛擬用戶數(shù)需要多長時間全部啟動。如果線程數(shù)為20 浸须,準備時長為10 惨寿,那么需要10秒鐘啟動20個線程邦泄。也就是每秒鐘啟動2個線程。

3.1.5. 循環(huán)次數(shù):

每個線程發(fā)送請求的次數(shù)裂垦。如果線程數(shù)為20 顺囊,循環(huán)次數(shù)為100 ,那么每個線程發(fā)送100次請求蕉拢√靥迹總請求數(shù)為20*100=2000 。如果勾選了“永遠”晕换,那么所有線程會一直發(fā)送請求午乓,一直到選擇停止運行腳本。

3.1.6. 調(diào)度器

設置線程組啟動的開始時間和結束時間(配置調(diào)度器時闸准,需要勾選循環(huán)次數(shù)為永遠)

3.1.7. 持續(xù)時間(秒)

測試持續(xù)時間硅瞧,會覆蓋結束時間

3.1.8. 啟動延遲(秒)

測試延遲啟動時間,會覆蓋啟動時間

3.1.9. 啟動時間

測試啟動時間恕汇,啟動延遲會覆蓋它。當啟動時間已過或辖,手動只需測試時當前時間也會覆蓋它瘾英。

3.1.10.? 結束時間

測試結束時間,持續(xù)時間會覆蓋它颂暇。

作者:Anwfly

鏈接:http://www.reibang.com/p/a53b149e6e46

來源:簡書

簡書著作權歸作者所有缺谴,任何形式的轉載都請聯(lián)系作者獲得授權并注明出處。3.1.2. 線程組主要包含三個參數(shù):

線程數(shù)耳鸯、準備時長(Ramp-Up Period(in seconds))湿蛔、循環(huán)次數(shù)。

3.1.3.? 線程數(shù):

虛擬用戶數(shù)县爬。一個虛擬用戶占用一個線程阳啥。設置多少虛擬用戶數(shù)在這里也就是設置多少個線程數(shù)。

3.1.4.? 準備時長(秒):

設置的虛擬用戶數(shù)需要多長時間全部啟動财喳。如果線程數(shù)為20 察迟,準備時長為10 ,那么需要10秒鐘啟動20個線程耳高。也就是每秒鐘啟動2個線程扎瓶。

3.1.5. 循環(huán)次數(shù):

每個線程發(fā)送請求的次數(shù)。如果線程數(shù)為20 泌枪,循環(huán)次數(shù)為100 概荷,那么每個線程發(fā)送100次請求÷笛啵總請求數(shù)為20*100=2000 误证。如果勾選了“永遠”继薛,那么所有線程會一直發(fā)送請求,一直到選擇停止運行腳本雷厂。

3.1.6. 調(diào)度器

設置線程組啟動的開始時間和結束時間(配置調(diào)度器時惋增,需要勾選循環(huán)次數(shù)為永遠)

3.1.7. 持續(xù)時間(秒)

測試持續(xù)時間,會覆蓋結束時間

3.1.8. 啟動延遲(秒)

測試延遲啟動時間改鲫,會覆蓋啟動時間

3.1.9. 啟動時間

測試啟動時間诈皿,啟動延遲會覆蓋它。當啟動時間已過像棘,手動只需測試時當前時間也會覆蓋它稽亏。

3.1.10.? 結束時間

測試結束時間,持續(xù)時間會覆蓋它缕题。

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末截歉,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子烟零,更是在濱河造成了極大的恐慌瘪松,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件锨阿,死亡現(xiàn)場離奇詭異宵睦,居然都是意外死亡,警方通過查閱死者的電腦和手機墅诡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門壳嚎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人末早,你說我怎么就攤上這事烟馅。” “怎么了然磷?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵郑趁,是天一觀的道長。 經(jīng)常有香客問我姿搜,道長穿撮,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任痪欲,我火速辦了婚禮悦穿,結果婚禮上,老公的妹妹穿的比我還像新娘业踢。我一直安慰自己栗柒,他們只是感情好,可當我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著瞬沦,像睡著了一般太伊。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上逛钻,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天僚焦,我揣著相機與錄音,去河邊找鬼曙痘。 笑死芳悲,一個胖子當著我的面吹牛名扛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播茧痒,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼旺订!你這毒婦竟也來了弄企?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤区拳,失蹤者是張志新(化名)和其女友劉穎劳闹,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體洽瞬,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡本涕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了伙窃。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片菩颖。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖为障,靈堂內(nèi)的尸體忽然破棺而出晦闰,到底是詐尸還是另有隱情,我是刑警寧澤鳍怨,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布呻右,位于F島的核電站,受9級特大地震影響鞋喇,放射性物質(zhì)發(fā)生泄漏声滥。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一侦香、第九天 我趴在偏房一處隱蔽的房頂上張望落塑。 院中可真熱鬧纽疟,春花似錦、人聲如沸憾赁。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽龙考。三九已至蟆肆,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間洲愤,已是汗流浹背颓芭。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留柬赐,地道東北人亡问。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像肛宋,于是被迫代替她去往敵國和親州藕。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內(nèi)容

  • 性能測試 為什么要進行性能測試酝陈? 評估當前系統(tǒng)的能力 尋找性能瓶頸床玻,優(yōu)化系統(tǒng)性能 評估軟件是否滿足未來的需要 招聘...
    JingFR閱讀 129評論 0 0
  • 一. 性能測試 1.0 為什么要進行性能測試? 評估當前系統(tǒng)的能力 尋找性能瓶頸沉帮,優(yōu)化系統(tǒng)性能 評估軟件是否滿足未...
    執(zhí)著_af43閱讀 430評論 0 0
  • 一. 性能測試 1.0 為什么要進行性能測試锈死? 評估當前系統(tǒng)的能力 尋找性能瓶頸,優(yōu)化系統(tǒng)性能 評估軟件是否滿足...
    Lyadia閱讀 1,076評論 0 0
  • 一. 性能測試 1.0 為什么要進行性能測試穆壕? 評估當前系統(tǒng)的能力 尋找性能瓶頸待牵,優(yōu)化系統(tǒng)性能 評估軟件是否滿足未...
    吹吹晚風_2f90閱讀 147評論 0 0
  • 一. 性能測試 1.0 為什么要進行性能測試? 評估當前系統(tǒng)的能力 尋找性能瓶頸喇勋,優(yōu)化系統(tǒng)性能 評估軟件是否滿足...
    友情提示閱讀 174評論 0 0