效能測試通用原則【3-1;2-5-10;80/20】
如果設計說明書中沒有給出明確的標準,那麼可以參考國外的業內公認的一些標準:
3+1原則(指量、全、深+快)
主要對效能測試設計、測試執行以及資料分析。
量:包括業務量(業務型別),負荷量(系統處理的流量),配置量(軟體配置和硬體配置),使用者量(靜態使用者和動態使用者),時間量(測試的時間)。
全:主要是針對測試用例而言。測試用例理你包括預置條件,測試步驟和預期結果三部分,這個“全”重點針對預置條件和測試步驟的測試結果觀察和資料而言。
深:一是對系統的瞭解要深,二是對缺陷的分析要深。
快:一是測試經驗的固化,避免測試設計,觀察等遺漏。將經驗固化成模板或工具便於經驗的傳承,減少測試的重複和遺漏;二是效能測試的自動化,包括效能測試環境構建和測試執行以及測試分析的自動化,自動化對效能測試效率的提升價值更大。
2-5-10原則
主要針對響應時間。簡單說,就是當用戶能夠在2秒以內得到響應時,會感覺系統的響應很快;當用戶在2-5秒之間得到響應時,會感覺系統的響應速度還可以;當用戶在5-10秒以內得到響應時,會感覺系統的響應速度很慢,但是還可以接受;而當用戶在超過10秒後仍然無法得到響應時,會感覺系統糟透了,或者認為系統已經失去響應,而選擇離開這個Web站點,或者發起第二次請求。
80/20原則
用於減少風險,抓住重點進行更多的測試:80/20原則即帕累托法則(Pareto Principle),使用者80%的時間在使用軟體產品中20%的功能。“重點測試”就是測試這20%的功能,而其他80%的功能屬於優先順序低的測試範圍,佔測試20%的資源。
例項:對測試強度估算
基本概念:每個工作日80%的業務在20%的時間內完成。
例如:每天工作8個小時,那麼每天80%的業務在8*20%=1.6小時內完成。
例1:去年全年處理業務約100萬筆,其中,15%的業務處理中,每筆務需對 應用伺服器提交7次請求;70%的業務處理中,每筆業務需對應用伺服器提交5次請求;其餘15%的業務處理中,每筆業務對應用伺服器提交3次請求。根據以 往的統計結果,每年的業務增量為15%,考慮到今後3年業務發展的需要,測試需按現有業務量的兩倍進行。
強度估算如下:
每年的總請求數為:
(100*15%*7+100*70%*5+100*15%*3)*2=1000萬次/年
每天的請求數為:
1000/160=6.25萬/天<備註:每個月為20個工作日,所以1年為160天>
每秒請求數:(62500×80%)/(8*20%*3600)=8.68次/秒