性能測試總結

一、性能測試

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

? ? 1.評估當前系統的能力

? ? 2.尋找性能瓶頸,優化系統性能

? ? 3.評估 軟件是否滿足未來需求

1.1什么是性能測試?

????時間:系統處理用戶請求的響應時間

? ? 資源:系統運行中,對資源的消耗

1.2性能測試是什么?

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

1.3功能和性能測試

? ? 1.不同:

? ? ? ? 功能測試驗證系統的功能需求規格、聚焦功能。

? ? ? ? 性能測試驗證系統業務性需求場景,聚焦時間內和資源。? ? ? ? ? ? ? ??

? ? 2.關系:

? ??????功能測試通過后,后進行性能測試。

1.4性能測試的分類

1.4.1:基準測試

? ??建立基準線,當系統軟硬件環境發生變化之后再進行一次基準測試以確定變化對性能的影響。

1.4.2負載測試

逐步增加系統負載,滿足性能指標情況下,找出系統的最大承受能力。

作用:系統最大負載量達到用戶要求時,系統才能正式上線使用。

注意:

? ? 1.通過負載測試,可以確定系統的最大負載量和極限負載量

? ? 2.系統對外宣稱的最大負載量

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

1.4.3穩定性測試

系統各項指標都正常的情況下,進行長時間的測試(1天—至一周),并且沒有出現問題,滿足用戶長時間運行該系統。

1.4.4壓力測試

1.在強負載下的測試,查看系統在峰值下是否功能隱患、系統是否具有良好的容錯能力和可恢復的能力。

2.場景

? ? 1.高負載下的長時間穩定性壓力測試

? ? 2.極限負載下的破壞性壓力測試

1.4.5并發測試

????在極短的時間內,處理大量請求來驗證系統的并發處理能力。

????場景:搶紅包、秒殺。

并發測試與負載測試的區別:

? ??負載測試:主要目的是測試高負載情況下,對系統資源的消耗,是否會耗盡的問題。

并發測試:主要目的是測試極短時間內,并發請求時,系統資源爭搶的問題。

1.5 性能測試的指標

1.5.1 響應時間

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

包括:服務器處理時間 + 網絡傳輸時間

1.5.2 并發用戶數

某一時刻同時向服務器發送請求的用戶數

1.5.3 吞吐量(Throughout)

1.概念:單位時間內處理客戶端的請求數量,直接體現軟件系統能能承載能力。

吞吐量單位分類

1.5.4 QPS

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

1.5.5 TPS

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

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

1.5.6 點擊數

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

注意:點擊數是請求數,不是頁面上的一次點擊

1.5.7 錯誤率

指系統在負載情況下,失敗業務的概率

注意:

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

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

1.5.8 資源利用率

概念:系統各種資源的使用情況,率=資源使用量/總資源可用量x100%

常見資源指標

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

內存大小使用率:不高于80%

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

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

Jmeter

1.jmeter的作用

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

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

? ? ? ? 3.數據庫測試

2.線程組是什么?

? ? ? ? 概念:性質相同的線程放在一個組內

? ? ? ? 線程組包含線程數、準備時長、循環次數

? ? ? ? 1.線程數:虛擬用戶數

? ? ? ? 2.準備時長:啟動所有用戶的時間

? ? ? ? 3.循環次數:每個線程發送請求的次數

3.jmeter主要組件

? ? ? ? 1.測試計劃

? ? ? ? 2.線程組:性質相同的一組線程(線程數、準備時間、循環次數)

? ? ? ? 3.采樣器:HTTP

????????協議、主機地址、端口號(選填)、請求方法、路徑、編碼格式(選填)、參數

? ? ? ? 4.監聽器:采集測試結構

? ? ? ? ? ? 察看結果樹、用表格查看、聚合報告

? ? ? ? 5.循環控制器

? ? ? ? 6.事務控制器

? ? ? ? ? ? 事務:多個操作組合

? ? ? ? ? ? 作用:

? ? ? ? 7.固定定時器

? ? ? ? ? ? ? ? 作用:控制兩個采樣器的間隔

? ? ? ? 8.斷言

? ? ? ? ? ? ? ? 1.Json斷言:判斷某個key對應某個value

? ? ? ? ? ? ? ? 2.響應斷言:響應中包含某個串

? ? ? ? 9.前置處理器和后置處理器

4.參數化

? ? ? ? 1.用戶自定義變量:

? ? ? ? ? ? ? ? 作用:提供全局變量,方便修改

? ? ? ? ? ? ? ? 使用:配置元件 → 用戶定義的變量 → key value → ${key}

? ? ? ? 2.CSV data set config

? ? ? ? ? ? ? ? 配置文件:

? ? ? ? ? ? ? ? 添加元件:CSV data set config → 選中文件 → 編碼 → 字段1,字段2

? ? ? ? ? ? ? ? 在采樣器界面:添加參數 → 調用${字段名稱}

? ? ? ?? 3.CSV函數小助手

? ? ? ? ? ? ? ? ? 工具? → 函數小助手 → 選擇CSV Read → 復制文件路徑 → 字段編號 → 生成 → 自動復制,過去粘貼

5.接口依賴

? ? ? ? 正則語法:* + ? . ()

? ? ? ? 實現:

? ? ? ? ? ? ①添加HTTP請求,使用正則提取一個需要字段

? ? ? ? ? ? ②在第一個HTTP請求里邊調用字段${字段}

6. jmeter腳本錄制和壓測

1.什么是腳本錄制

在進行測試的時候,可能有好多腳本或者界面需要操作測試,并且有些測試鏈接需要重復多線程高并發進行測試,我們一般會針對這一些操作,進行一個腳本錄制,錄制好之后,之后測試就可以在這個基礎上進行測試。

2.腳本錄制方式

? ? web端:badboy腳本錄制

? ? app端:使用Jmeter自帶的代理服務器進行腳本錄制

3.Android手機端腳本錄制

? ? 1.同網

? ? 2.添加http代理服務器

? ? 3.在線程中添加錄制控制器

? ? 4.在http代理服務器中指定錄制腳本的路徑,默認端口8888

? ? 5.查看本地的ip

? ? 6.設置移動端代理,IP和端口號

? ? 7.啟動

? ? 8.打開手機app,抓取接口

4.web端腳本錄制

安裝badboy腳本軟件→打開badboy軟件→使用

7.Jmeter壓測

一.數據庫壓測

? ? 1.為什么要緊行數據庫壓測

? ? ? ? 不斷給數據庫施加壓力,驗證數據庫處理的性能

? ? 2.如何進行數據庫壓測

? ? ? ? 1.jdbc配置:創建線程組→添加配置元件JDBC Connection Configuration→對數據庫連接的配置進行設置→添加jdbc Request請求→運行

select statement:只支持單條查詢,只支持第一條數據查詢

updata statement:修改數據

Callable Statement:支持查詢、修改、支持多個查詢

Prepared Select Statement:類型必須為varchar**結合csv配置數據

2.jmeter對服務器壓測(windows)

? ? ? 資源準備:? JMeterPlugins-Extras.jar和JMeterPlugins-Standard.jar放到apache-jmeter-3.0\lib\ext目錄下

? ? 操作:打開server的監聽→添加監聽器-jp@gc - PerfMon Metrics Collector→添加性能指標,線程組設置線程數和時間

? ?? 2.jmeter對服務器壓測(linux)

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,983評論 6 537
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,772評論 3 422
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,947評論 0 381
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,201評論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,960評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,350評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,406評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,549評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,104評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,914評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,089評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,647評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,340評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,753評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,007評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,834評論 3 395
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,106評論 2 375

推薦閱讀更多精彩內容

  • 第五單元、性能測試 1.什么是性能測試 通過自動化的測試工具模擬系統正常、異常、峰值的場景對系統的各項性能...
    小董小董閱讀 401評論 0 0
  • 一.性能測試 1 .性能:時間:系統處理用戶請求的響應時間 資源:系統運行過程中,系統資源的消耗情況 ...
    ZhaoyiMing閱讀 295評論 0 0
  • 本文主要介紹下性能測試的基本流程,性能測試從實際執行層面來看,測試的過程一般分為這么幾個階段,如下圖: 下面分別介...
    James黃杰閱讀 1,591評論 0 22
  • 本篇文章主要簡單總結下性能測試工具的原理以及如何選型。性能測試和功能測試不同,性能測試的執行是基本功能的重復和并發...
    James黃杰閱讀 857評論 1 10
  • 一、 數據庫壓測1. 為什么要進行數據庫壓測 不斷給數據庫施加壓力,驗證數據庫處理的性能2. 如何進行數據庫壓測 ...
    老友_9e40閱讀 213評論 0 0