概念:性能測試主要是通過自動化測試工具模擬多種正常、峯值以及異常負載條件來對系統的各項性能指標進行測試。
分類:性能測試;負載測試;壓力測試(強度測試);併發測試;配置測試;可靠性測試。
流程:
1、測試計劃階段:明確測試對象,定義測試目標,定義測試通過的標準,規劃測試進度,規劃測試人員(需求、開發、測試、運維和配置),申請測試資源,風險控制。
2、測試設計階段:測試數據,測試用例和測試場景的設計。
3、測試開發階段:測試環境搭建,測試過程文檔定義以及配置,測試腳本開發、調試,測試數據準備,基準測試。
4、測試執行階段:執行測試用例(執行腳本和場景),測試過程監控(查看log、監控服務器資源、數據庫和中間件等)。
5、測試結果分析階段:出現的瓶頸和給出優化建議。
6、測試報告階段:測試範圍,測試執行以及參與人員,基準測試數據,測試執行的詳細步驟(場景設計),測試數據記錄、監控結果,測試結果對比以及總結性評價。
性能測試工具。
性能測試工具:loadrunner。
Loadrunner組件:
1、腳本生成器(Virtual User Generator):錄製最終用戶業務流程並創建性能測試腳本,
2、負載生成器(Load Generator)
3、敷在調度監控器(Controller):組織、驅動、管理並監控負載測試,
4、數據分析器(Analysis)用於查看、剖析和比較性能結果。
Loadrunner的功能:創建虛擬用戶、創建真實的負載、定位性能問題、分析結果以精確定位問題所在、重複測試保證系統發佈的高性能。
Loadrunner測試步驟:使用VUGen創建腳本,使用Controller創建測試場景,使用Analysis分析測試結果。
錄製測試腳本:錄製選項:Generator到Recording到HTTP/HTML Level。兩種錄製模式:HTML-based Script和URL-based Script。一般用HTML-based Script。用URL格式的錄製是在每一個HTML元素都用了一個web URL函數進行下載,用URL錄製出來的腳本特別長不容易關聯。用基於HTML錄製的腳本特別簡潔。
事務(transaction):衡量某個action的性能,需要在action的開始和結束位置插入這樣一個範圍,這就定義了一個transaction。
爲什麼在loadrunner中使用事務:
- 事務loadrunner度量系統性能指標的唯一手段,
- 事務能夠用於度量高風險業務流程的性能指標,
- 事務能夠度量在一組操作中每一步的性能指標,
- 通過事務計時實現了不同壓力負載下的性能指標對比,
- 通過事務計時可以幫助定位性能瓶頸。
關聯(correlation):把腳本中某些寫死的數據、轉變成是選取自服務器所送的、動態的、每次都不一樣的數據。
參數化:使用指定數據源中的值來替換腳本錄製生成的語句中的參數。(步驟:1、用參數替換Vuser腳本中的常量值;2、爲參數設置屬性和數據源。)
Controller測試場景:手動和目標測試場景。
Analysis提高以下報告工具:摘要報告;事務報告;HTML報告。
Loadrunner工作原理:首先通過VuGen來錄製模擬用戶行爲的腳本;然後根據性能測試目標,在Controller中涉及場景,指定負載生成的方式(如壓力機(LG)使用數,併發用戶數,執行市場等);接着執行場景並監控被負載服務器的性能指標;待場景執行完畢,調用Analysis來對生成的數據進行分析,最後得出性能測試報告。
使用loadrunner進行性能測試的步驟:
- 用戶模擬行爲:錄製腳本、回放腳本、關聯設置、添加事務、參數化、添加邏輯判斷。
- 場景設計與監控:場景設計、場景監控
- 結果分析。