1. 程式人生 > >負載測試方案(一)

負載測試方案(一)

 

  1. 目的

負載測試,是效能測試中的一種,通過測試系統、資料在資源超負荷環境(梯度漸進的過程)中執行時,持續正常執行的能力,程式能否承擔,分析其效能行為,以發現效能瓶頸、記憶體洩漏、資料不能實時同步等設計上的錯誤或驗證系統的負載能力。

注:負載測試屬於效能測試的子集,負載測試是測試軟體本身最大所能承受的效能測試,如一個人背X斤:

負載測試:50斤、100斤、200斤情況下,是否能堅持5分鐘。

壓力測試:200,300,400...斤情況下的表現,什麼時候失敗,失敗之後什麼表現,重新扛200是否正常。

容量測試:在堅持5分鐘的情況下,他一次最多能扛多少斤。

梯度漸進的過程:通過逐步增加系統負載,確定在滿足效能指標的情況下,系統所能承受的最大負載量。

  1. 實現

怎麼在保證在合理時間(有限的時間)內完成合理的測試。

    1. 瞭解被測物件的需求及實現技術

測什麼、怎麼測是要切合實際需求、專案具體實現來分析的

    1. 確定基量數

跟據需求,將效能測試指標進行抽象化,基礎資料容量、業務資料容量、最佳併發數等。

    1. 確定測試場景

以“併發,迴圈操作,多使用者”為主,結合實際需求,進行場景組合分析,確定測試場景,有目的的進行測試。

    1. 測試資源籌備

可測試性分析、測試資源(硬體資源、軟體資源、人力資源、時間資源)籌備。

    1. 測試執行

藉助自開發指令碼(Python、Java、sql、nosql)、工具輔助(jmeter、SoapUI、loadrunner、postman等)。

    1. 持續整合測試

Jenkins持續整合測試,持續跟蹤測試,很多效能問題不是1次,2次,1天、2天就能立馬暴露出來的。

    1. 結果分析

效能須要透過表象看本質,結合系統架構、軟硬體配置、網路寬頻等進行分析。

A、指標分析:吞吐量、tps每秒處理事務數,每秒請求事務數量、響應時間、錯誤率等。

B、伺服器監控:cpu、記憶體、磁碟IO、負載Load。

C、日誌分析:日誌列印、耗時情況、錯誤率、模組或函式被呼叫的情況。

    1. 風險分析、識別

敏捷測試理念引入:測試動作要提前,全過程參與,傳統的軟體測試相比,全過程測試管理方式不僅可以有效降低產品的質量風險,而且還可以提前對軟體產品缺陷進行規避、縮短對缺陷的反饋週期和整個專案的測試周期,建立“以預防為主”的質量意識,缺發現得越晚,修復成本越大,風險也越高(如修改引入新問題)。

 

 

 


  1. XXX專案知識圖譜測試方案
  1. 測試關鍵活動

(該活動的實施不全都是面向測試人員)

軟體測試活動包括設計評審,程式碼走讀,資料測試(資料分層測試、資料庫測試),效能測試,使用者介面測試、系統測試等。

設計評審,程式碼正規檢視,資料測試:解決各節點(資料提取、轉換、載入)資料轉換規則、計算規則、資料修復錯誤,絕大部分邏輯錯誤等問題。

效能測試:穿插各個階段進行

使用者介面測試、系統測試:測試階段完成,要發現隱藏深入的邏輯問題及模組間配合問題。

資料分層測試:提早實施測試、便於問題範圍定位、分析

 

以測試小組的方式開展工作。通過加強不同業務模組測試與測試之間,相同業務模組測試與開發和產品經理之間的溝通交流,來提高人員的測試水平,提升測試質量。

 

測試過程中需要不斷總結,形成可共享的測試方法和經驗。