再談軟件性能測試 軟件測試
什么是性能測試?
性能測試(在此主要指軟件的性能測試)的定義各家各門(mén)派的定義很多,個(gè)人比較認同Wiki上面的解釋?zhuān)?/P>
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.
譯:在軟件工程里,性能測試是指從一個(gè)角度出發(fā)用于測定系統的一些地方在特定負載下運行的速度。
它也可以用于驗證和校驗系統的其他質(zhì)量特性,例如可伸縮性,穩定性和資源使用率。性能測試是性能工程的一個(gè)子集。性能工程是一門(mén)新興的計算機科學(xué)實(shí)踐,它致力于構建性能于系統的設計和架構中。
隨著(zhù)計算機技術(shù)以及軟件產(chǎn)業(yè)的不斷發(fā)展,性能測試的范圍已經(jīng)從最初簡(jiǎn)單的范疇衍生到一個(gè)非常廣的領(lǐng)域,業(yè)界叫法也是五花八門(mén),例如壓力(強度)測試,負載測試,并發(fā)測試等。就我看來(lái),他們之間有差別,但是由于其在測試的手段和技術(shù)上的相似性,更多的被看成是廣義性能測試的幾個(gè)子集。
性能測試:在一個(gè)特定的基準下(相對較輕的負載),測試系統的性能表現
負載測試:測試系統在多種負載組合下(相對較重的負載)的性能表現。
壓力(強度)測試:測試系統在高或很高強度負載情況下的性能表現。
容量測試:測試系統在高或很高數據量的情況下的性能表現。
假如預期系統的最大負載為1000的話(huà),性能測試的負載大致為30~100,負載測試為101~800,壓力(強度)測試為801~1200。這個(gè)預期的最大負載來(lái)源于系統各層的最大連接數的設置。容量測試的重點(diǎn)是系統的高數據量,基本不考慮并發(fā)用戶(hù)數,一般測試時(shí)會(huì )注入數據庫最大容量的70~90%。
下面舉個(gè)簡(jiǎn)單的例子,假設客戶(hù)對系統的性能要求為系統中的主要交易響應時(shí)間不超過(guò)8秒。那么一般如何執行性能測試呢?下面是一個(gè)簡(jiǎn)單也有代表性的性能測試過(guò)程。
性能測試
1.收集性能要求
2.編寫(xiě)性能測試計劃
3.編寫(xiě)性能測試方案或用例(轉換性能需求,確定性能測試點(diǎn)及性能接收標準)
4.配置測試環(huán)境
5.實(shí)現測試設計
6.執行性能測試
7.分析測試結果
8.報告測試結果,如果性能未達到要求,提交bug
9.開(kāi)發(fā)人員修復bug,重新執行步驟6~8,直至測試通過(guò)
(表一)
去掉列1中的關(guān)鍵詞“性能”,再加上“功能”看看。
性能測試xx測試功能測試
1.收集性能要求1.收集xx要求1.收集功能要求
2.編寫(xiě)性能測試計劃2.編寫(xiě)xx測試計劃2.編寫(xiě)功能測試計劃
3.編寫(xiě)性能測試方案或用例(轉換性能需求,確定性能測試點(diǎn)及性能接收標準)3.編寫(xiě)xx測試方案或用例(轉換xx需求,確定xx測試點(diǎn)及xx接收標準)3.編寫(xiě)功能測試方案或用例(轉換功能需求,確定功能測試點(diǎn)及功能接收標準)
4.配置測試環(huán)境4.配置測試環(huán)境4.配置測試環(huán)境
5.實(shí)現測試設計5.實(shí)現測試設計5.實(shí)現測試設計
6.執行性能測試6.執行xx測試6.執行功能測試
7.分析測試結果7.分析測試結果7.分析測試結果
8.報告測試結果,如果性能未達到要求,提交bug8.報告測試結果,如果xx未達到要求,提交bug8.報告測試結果,如果功能未達到要求,提交bug
9.開(kāi)發(fā)人員修復bug,重新執行步驟6~8,直至測試通過(guò)9.開(kāi)發(fā)人員修復bug,重新執行步驟6~8,直至測試通過(guò)9.開(kāi)發(fā)人員修復bug,重新執行步驟6~8,直至測試通過(guò)
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/