1、什么是性能測試
通過一定的手段,在多并發下情況下,獲取被測系統的各項性能指標,驗證被測系統在高并發下的處理能力、響應能力,穩定性等,能否滿足預期。定位性能瓶頸,排查性能隱患,保障系統的質量,提升用戶體驗。
2、什么樣的系統需要做性能測試
- 用戶量大,頁面訪問量(Page View)比較高的系統
- 系統核心模塊/接口
- 業務邏輯/算法比較復雜 -- 意味著性能比較低
- 促銷/活動推廣計劃
- 新技術選型 -- 根據性能對比測試結果來確定是否采用新技術
3、性能測試分類
客戶端性能
測試APP自身的性能,如CPU、內存消耗;web頁面元素渲染的速度;客戶端不存在并發。
服務端性能
測試服務端項目程序的支持并發、處理能力,響應時間等,主要通過接口來做性能測試。
目前服務端的性能測試是主流,一般說到的性能測試,都是指的服務端性能測試。客戶端相對較少一些。
4、性能測試指標
4.1 并發/并發數/虛擬用戶數(Vuser)
并發/并發數:同時向服務器發送請求的用戶數。
幾個容易混淆的概念
注冊用戶:在系統中注冊成功的用戶數量,也就是數據庫里存儲的用戶數量;
在線用戶:同時處于在線狀態的用戶數量,也就是已經登錄成功的用戶數量;
并發用戶:同時向服務器發送請求的用戶數量,也就是正在做同一個業務的用戶數;
在工廠的例子里,注冊用戶就是工廠里所有的卡車;在線用戶就是已經派遣出去的卡車,但是車輛未必在拉貨,可能在等待;并發用戶就是正在拉貨的卡車數量。
很明顯,注冊用戶 > 在線用戶 > 并發用戶
虛擬用戶數(Vuser):壓測工具中設置的并發線程/進程數量。
4.2 TPS/QPS/吞吐量
- Transaction Per Second,每秒鐘處理的事務數。
- Query Per Second,每秒鐘處理