什么是性能測試?
性能測試(在此主要指軟件的性能測試)的定義各家各門派的定義很多,個人比較認同Wiki上面的解釋:
In software engineering, performance testing is testing that is performed, from one perspective, to determine how fast some aspect of a system performs under a particular workload.
It can also serve to validate and verify other quality attributes of the system, such as scalability, reliability and resource usage. Performance testing is a subset of Performance engineering, an emerging computer science practice which strives to build performance into the design and architecture of a system, prior to the onset of actual coding effort.
譯:在軟件工程里,性能測試是指從一個角度出發用于測定系統的一些地方在特定負載下運行的速度。
它也可以用于驗證和校驗系統的其他質量特性,例如可伸縮性,穩定性和資源使用率。性能測試是性能工程的一個子集。性能工程是一門新興的計算機科學實踐,它致力于構建性能于系統的設計和架構中。
隨著計算機技術以及軟件產業的不斷發展,性能測試的范圍已經從最初簡單的范疇衍生到一個非常廣的領域,業界叫法也是五花八門,例如壓力(強度)測試,負載測試,并發測試等。就我看來,他們之間有差別,但是由于其在測試的手段和技術上的相似性,更多的被看成是廣義性能測試的幾個子集。
性能測試:在一個特定的基準下(相對較輕的負載),測試系統的性能表現 負載測試:測試系統在多種負載組合下(相對較重的負載)的性能表現。 壓力(強度)測試:測試系統在高或很高強度負載情況下的性能表現。 容量測試:測試系統在高或很高數據量的情況下的性能表現。假如預期系統的最大負載為1000的話,性能測試的負載大致為30~100,負載測試為101~800,壓力(強度)測試為801~1200。這個預期的最大負載來源于系統各層的最大連接數的設置。容量測試的重點是系統的高數據量,基本不考慮并發用戶數,一般測試時會注入數據庫最大容量的70~90%。
下面舉個簡單的例子,假設客戶對系統的性能要求為系統中的主要交易響應時間不超過8秒。那么一般如何執行性能測試呢?下面是一個簡單也有代表性的性能測試過程。
性能測試
1.收集性能要求
2.編寫性能測試計劃
3.編寫性能測試方案或用例(轉換性能需求,確定性能測試點及性能接收標準)
4.配置測試環境
5.實現測試設計
6.執行性能測試
7.分析測試結果
8.報告測試結果,如果性能未達到要求,提交bug
9.開發人員修復bug,重新執行步驟6~8,直至測試通過
(表一)
去掉列1中的關鍵詞“性能”,再加上“功能”看看。
性能測試
xx測試
1.收集性能要求
文章來源于領測軟件測試網 http://www.kjueaiud.com/