性能測試流程
很多人剛剛接觸性能測試的時候,拿到客戶提出的大致需求,如並發用戶數是500,響應時間3秒。然后就開始做腳本,加壓運行,收集測試結果;等客戶問到:某某流程支持多少並發?各個測試流程比例是否和實際用戶使用情況一致?可擴展需求情況如何?然后我們就傻眼了...
拿到一個性能測試任務的時候,我們首先需要明確我們的測試目標和輸出結果是什么;沒有計划的開始注定是失敗的。做性能測試需要一個規范的流程,划分清各個階段需要做哪些工作,這樣我們在接到一個任務時就不會手忙腳亂。性能測試流程大致分為一下幾個階段:
1、測試准備
2、腳本開發與調試
3、測試執行
4、測試結果評估
5、測試后跟蹤
測試准備包括:
1、測試目標:
從需求文檔或者用戶獲取:並發用戶數,事務吞吐需求,響應時間需求,系統占用資源需求,可擴展性需求等;
2、應用軟件:
從開發人員獲取:系統整體架構(BS/CS),采用開發語言,通信協議,動態session,驗證碼等;
3、系統部署平台:
從運維人員獲取:物理部署(局域網/虛擬機),硬件架構(CPU/MEM/IO),操作系統,數據庫(版本/啟動參數/存儲布局),中間件(參數配置),部署模式等;
4、系統負載模型:
通過調研獲取:從業務層面選取關鍵用例吞吐率以及用戶行為習慣,確定測試流程及流程業務比例;從系統負載方面了解高峰/平常場景吞吐率;
5、制定測試計划和測試方案。
測試腳本是做好性能測試的基礎,監控結果是性能測試的關鍵;扎實的代碼基礎和熟練掌握監控結果的收集和分析是性能測試的保障;系統上線后,對實際負載與性能情況和測試過程中做比較總結經驗也是學習提高的好方法。