Jmeter性能測試系列-需求分析與定義
需求分析與定義
針對本次項目性能測試的必要性評估,敏捷開發團隊確定實施該次性能測試活動,並利用開源性能測試工具Jmeter開展,根據被測對象的應用特性,獲取具體的性能測試需求。
一般而言,被測對象的性能需求,會在用戶需求規格說明書中給出,如單位時間內的訪問量需達到多少、業務響應時間不超過多少、業務成功率不低於多少、硬體資源耗用要在一個合理的範圍中,性能指標以量化形式給出。
對於相對規範的產品,產品團隊一般會給出類似下表的性能測試要求:
性能測試要求
測試項
響應時間
業務成功率
並發數
CPU使用率
內存使用率
隨機購買商品
<=5秒
100%
100
<=80%
<=80%
上表給出的性能指標非常明確。性能測試活動實施過程中,測試工程師只需收集商品購買業務的響應時間、訪問成功率、並發數、CPU使用率、內存使用率等相關指標的監測數據,與上表的量化指標比對即可。滿足相關指標,則測試通過,若未滿足,則需要進行問題分析定位,最終進行調優與回歸,直至達到性能測試需求。
有明確性能需求時,測試活動相對來說較為容易開展,但實際工作中,經常會碰到沒有明確性能需求的測試要求。因此,測試工程師須具備根據不同輸入分析,獲取性能需求的能力。以本次項目為例,產品團隊並未指明性能測試需求,那麼測試工程師如何分析提取量化的性能指標呢?
從用戶應用角度考慮,被測對象常用業務性能存在瓶頸的話,很容易引起客戶的反感。以登錄功能為例,輸入用戶名與密碼,點擊登錄按鈕到顯示成功登錄信息,如果耗時1分鐘,這樣的速度用戶絕對無法忍受。用戶不常用的功能,比如年度報表匯總功能,三個季度甚至是一年才使用,等個10分鐘或者更長時間也是正常的。不同的應用頻率,決定了用戶的使用感受,也決定了測試的需求。針對本次ECShop電商系統而言,商城用戶經常使用的功能,且存在大量用戶使用的業務為用戶註冊、登錄、隨機瀏覽商品及購買業務等,而其他功能則相對用戶較少,具體的數據如果系統已經運營,則可從系統運營日誌分析。如果尚未上線運營,則需要調研用戶或根據自身經驗進行分析獲取。
推薦閱讀:
※80後測試工程師的中年危機,不知道自己還能不能幹測試,能幹多久
※核心實驗:監控並分析Windows和Linux關鍵性能指標
※LoadRunner v12.55發布,大量新增功能,各協議得到優化改進|附下載
※從能力和性格出發,你是否具備做一名優秀測試的資格?
※JMeter之旅01