性能測試分類網絡
1.性能測試(狹義)
性能測試方法是在特定的運行環境下,經過模擬生產運行的業務壓力量和使用場景組合,測試系統的性能是否知足生產性能要求。
主要目的是爲了驗證系統是否具備本身所宣稱的能力,這種方法是對系統性能已經有了解的前提,並對需求有明確的目標,在已經肯定的環境下進行的。
舉例:中考體育考試評分標準,該標準在考試前就已經提早肯定好了,各位考試的同窗只須要按照考試項目在相同的環境完成考試,評分人員就能夠給出分數,這就是典型的根據指標給出結果的測試。併發
2.基準測試
在必定的軟件、硬件和網絡環境下,模擬必定數量的用戶運行一種或多種業務,將測試結果做爲基線數據,供後續測試活動參考。
主要目的是找出系統的基本性能狀況,爲後續調優作準備。
舉例:中學體育考試的評分標準確定是通過大量中學生的數據積累得來的,若是性能測試(狹義)是用該指標進行後續考試的評分,那麼基準測試則是在不知道該指標的狀況下讓學生完成考評,從獲得的數據中求平均。
【特別說明】:性能測試(狹義)在有的公司也被看做是基準測試,但在概念上實際上是不一樣的,前者是知曉性能指標,對比實際和預期的差別,然後者則是經過度量獲得性能指標,爲調優提供依據。性能
3.負載測試
經過在被測系統上不斷加壓,直到性能指標達到極限,例如「響應時間」超過預約指標或某種資源已經達到飽和狀態。
主要目的是找出系統處理能力的極限,在不瞭解系統能力的前提下,在給定的測試環境中進行,看系統在何時已經超出「個人要求」或系統崩潰。
舉例:爬樓梯測驗,最早要求同窗從1樓爬到10樓扛5斤米,發現同窗沒有問題後接着要求從1樓爬到10樓扛10斤米,逐次增長扛大米的斤數,直至扛不動爲止。假設該同窗扛45斤米爬樓梯的時候已經盡全力了,仍是順利地扛到了10樓,而增長到46斤米的時候完全累垮,沒能到達10樓,咱們就能夠說扛45斤米爬10層就是該同窗的極限了。測試
4.壓力測試
壓力測試也稱爲強度測試,通常經過模擬負載等方法,使得系統的資源使用達到較高的水平,觀察系統可以處理的會話能力,以及系統是否會出現錯誤。
主要目的是檢查系統處於壓力性能下時,應用的表現。
舉例:若是扛45斤是該同窗的極限,那麼扛40斤從1樓到10樓,持續一段時間(4小時),看該同窗能不能堅持住,這就是所謂必定壓力性能下的表現。內存
5.併發測試
併發測試方法經過模擬用戶併發訪問,測試多用戶併發訪問同一個應用、同一個模塊或者數據記錄時是否存在性能問題。
主要目的是發現系統中可能隱藏的併發訪問時的問題。主要關注系統可能存在的併發問題,例如系統中的內存泄漏和資源爭用方面的問題。
舉例:以馬拉松爲例,常常會舉辦大型馬拉松活動,但在比賽中賽道是有限的,你們擁擠在賽道上,結果有人在一開始就被擁擠的人羣絆倒。若是在該賽道上增長額外的比賽項目,混亂的場面將難以控制。資源
6.配置測試
配置測試方法經過對被測系統的軟/硬件環境的調整,從而找到系統各項資源的最優分配原則。
主要目的是瞭解各類不一樣因素對系統性能影響的程度,從而判斷出最值得進行的調優操做。適合對系統性能情況有初步瞭解後進行,通常用於性能調優和規劃能力。
舉例:某同窗跑1000米取平均成績爲4分8秒,教練爲了在短時間內提升該同窗的成績採起了以下辦法:更換更輕便的跑鞋,換上專業的運動服,調整了跑步姿式等,通過一系列的調整發現該同窗的平均成績提高了2秒鐘。基礎
7.可靠性測試
在系統加載必定業務壓力的狀況下,使系統運行一段時間,以此檢測系統是否穩定。
這種性能測試方法的主要目的是驗證是否支持長期穩定的運行,須要在壓力下持續一段時間,在測試過程當中關注系統的運行情況。
舉例:咱們繼續以負載測試中爬樓梯的同窗爲例,若是扛45斤是該同窗的極限,扛40斤是該同窗較大壓力的負載,那麼可靠性就是扛25斤左右的大米,從1樓到10樓持續很長一段時間(2~3天),關注該同窗在持續過程當中的表現。
也就是說,這種測試的關注點是「穩定」,不須要給系統太大的壓力,只要系統可以長期處於一個穩定的狀態。
分類總結
負載測試是壓力測試和可靠性測試的基礎,只有找到極限值才能肯定壓力狀態和常規狀態下的取值。
性能測試是由若干種測試類型組成的,在實際工做中每每須要多種測試類型一併考慮,而不是隻關注某一種類型。軟件