直奔主題----
先來看第乙個問題:
分析思路:根據測試物件定製測試設計
a: 在沒有指標資料情況下:(例如,沒明確要求系統必須在200萬併發時響應時間不超過5秒等;研發者想知道自己的系統效能情況)
1. 被測物件是乙個系統:
例如: 新開發了一套業務系統,現在想知道該系統的負載能力;
關鍵點: 吞吐量、併發量(為什麼是這兩個指標?這裡早有專家做過深入的分析了,throughput和concurrency是效能測試的兩大關鍵參量)
參考步驟: (1)測併發量的時候,不斷增加併發數,收集效能資料 (2) 測throughput的時候,在最小化使用者數的前提下讓throughput最大化
結果資料: 系統最大負載、最佳負載及相應場景下效能相關資料。(cpu、mem、disk、tps、最大併發、響應時長等)
2. 被測物件是系統中新增的乙個模組/功能:
+情景a:
已知系統效能資料的情況下(即,根據 1 的測試,已知系統的承載力),可以直接用系統最大負載進行測試,觀察新模組在最系統大負載下的效能。
結果資料:系統最大負載情況下新增模組的效能相關資料。
+情景b:
沒有系統的先驗效能資料情況下,單獨對這一模組做效能測試。
這時我們的目的可能有兩個:
-b1. 想知道該模組的最大負載資料
-b2. 想知道指定負載下的效能相關資料(例如: 1萬併發請求情況下的效能指標資料)
-b3. 想知道新的模組在效能上是否合格
b1,b2 都好實踐。b3 就是乙個模糊的概念了。而且 b3 引入了乙個更值得深入思考的問題:「怎樣的效能結果資料算合格?」
解決辦法參考:
1. 和經驗/直覺資料做對比
例如: 乙個百萬使用者的系統,在1萬併發情況下,業務響應時長不高於 1 秒,cpu使用率不高於 40%;直觀上來看,算合格了吧。
2. 和系統中其它模組的效能資料做對比(如果有的話)
3. 和自己做對比
例如: 分別測試模組在1k、2k、5k、10k負載下的效能資料,分析效能損耗趨勢
b:有硬性指標要求的情況下:
這個就簡單了,根據要求進行負載測試,不達標就繼續優化。
再來看第二個問題:
分析思路:
1. 被測物件是乙個系統:
測試環境的硬體配置不如生產環境好(生產有集群或負載均衡策略)。所以一般來說生產的效能資料都會比測試環境的結果資料好一些。
2. 被測物件是系統中新增的乙個模組/功能:
這裡需要注意了,單獨測試乙個模組時,系統中的其它業務模組可能是處於低負載或0負載狀態,這與實際的生產運**況是不一致的。
所以這時候得出的單一模組效能結果資料,並沒能反應出系統在實際執行時的效能狀態,甚至也沒能反應出系統執行時該模組的效能狀態。
(待續)
效能測試 軟體測試的重中之重
效能測試在軟體的質量保證中起著重要的作用,它包括的測試內容豐富多樣。中國軟體評測中心將效能測試概括為三個方面 應用在客戶端效能的測試 應用在網路上效能的測試和應用在伺服器端效能的測試。通常情況下,三方面有效 合理的結合,可以達到對系統效能全面的分析和瓶頸的 應用在客戶端效能的測試 對於應用在伺服器上...
全棧效能測試 01效能測試的方法及流程
正確理解效能測試 什麼是效能測試 效能測試 屬於軟體測試範疇,旨在測試處於特定環境和配置下的系統在一定量的負荷下,系統的適合性,易用性,響應時間,吞吐量,成功率,穩定性,可靠性,可恢復性等特徵 是否滿足特定干係人需求的能力。系統效能關乎使用者體驗。效能屬於產品的非功能性質量特性。嚴格意義上去叫 效能...
測試理論 01 軟體測試的定義 分類
軟體 程式 資料 文件 且軟體分為兩大類 系統軟體和運用軟體 系統軟體 生成 準備和執行其他程式所需要的一組檔案和程式,如作業系統windows 驅動程式 使用人工和自動手段來執行或測試某個系統的過程 目的在於驗證它是否滿足規定的需求,保證軟體質量,提高使用者體驗 按技術來分 白盒測試和黑盒測試 白...