性能測試用例主要分為預期目標用戶測試,用戶并發測試,疲勞強度與大數據量測試,網絡性能測試,服務器性能測試五大部分,具體編寫測試用例時要根據實際情況進行裁減,在項目應用中遵守低成本,策略為中心,裁減,完善模型,具體化等原則;
一、WEB 全面性能測試模型
Web 性能測試模型提出的主要依據是:一種類型的性能測試可以在某些條件下轉化成為另外一種類型的性能測試,這些類型的性能測試的實施是有著相似之處的;
1. 預期指標的性能測試
系統在需求分析和設計階段都會提出一些性能指標,完成這些指標的相關的測試是性能測試的首要工作之一,這些指標主要諸于“系統可以支持并發用戶200個;”系統響應時間不得超過20秒等,對這種預先承諾的性能要求,需要首先進行測試驗證;
2. 獨立業務性能測試
獨立業務實際是指一些核心業務模塊對應的業務,這些模塊通常具有功能比較復雜,使用比較頻繁,屬于核心業務等特點。
用戶并發測試是核心業務模塊的重點測試內容,并發的主要內容是指模擬一定數量的用戶同時使用某一核心的相同或者不同的功能,并且持續一段時間。對相同的功能進行并發測試分為兩種類型,一類是在同一時刻進行完全一樣的操作。另外一類是在同一時刻使用完全一樣的功能。
3. 組合業務性能測試
通常不會所有的用戶只使用一個或者幾個核心業務模塊,一個應用系統的每個功能模塊都可能被使用到;所以WEB性能測試既要模擬多用戶的相同操作,又要模擬多用戶的不同操作;組合業務性能測試是最接近用戶實際使用情況的測試,也是性能測試的核心內容。通常按照用戶的實際使用人數比例來模擬各個模版的組合并發情況;組合性能測試是最能反映用戶使用情況的測試往往和服務器性能測試結合起來,在通過工具模擬用戶操作的同時,還通過測試工具的監控功能采集服務器的計數器信息進而全面分析系統瓶頸。
用戶并發測試是組合業務性能測試的核心內容。組合并發的突出特點是根據用戶使用系統的情況分成不同的用戶組進行并發,每組的用戶比例要根據實際情況來匹配;
4. 疲勞強度性能測試
疲勞強度測試是指在系統穩定運行的情況下,以一定的負載壓力來長時間運行系統的測試,其主要目的是確定系統長時間處理較大業務量時的性能,通過疲勞強度測試基本可以判定系統運行一段時間后是否穩定;
5. 大數據量性能測試
一種是針對某些系統存儲,傳輸,統計查詢等業務進行大數據量時的性能測試,主要針對某些特殊的核心業務或者日常比較常用的組合業務的測試;
第二種是極限狀態下的數據測試,主要是指系統數據量達到一定程度時,通過性能測試來評估系統的響應情況,測試的對象也是某些核心業務或者常用的組合業務。
第三種大數據量測試結合了前面兩種的測試,兩種測試同時運行產生較大數據量的系統性能測試;
大數據量測試通常在投產環境下進行,并獨立出來和疲勞強度測試放在一起,在整個性能測試的后期進行;大數據量的測試可以理解為特定條件下的核心業務或者組合業務測試;
6. 網絡性能測試
主要是為了準確展示帶寬,延遲,負載和端口的變化是如何影響用戶的響應時間的,在實際的軟件項目中
主要是測試應用系統的用戶數目與網絡帶寬的關系。網絡測試的任務通常由系統集成人員完成;
7. 服務器(操作系統,WEB服務器,數據庫服務器)性能測試
初級服務器性能測試主要是指在業務系統工作或者進行前面其他種類性能測試的時候,監控服務器的一些計數器信息,通過這些計數器對服務器進行綜合性能分析,為調優或提高系統性能提供依據;
高級服務器性能測試一般由專門的系統管理員來進行如數據庫服務器由專門的DBA來進行測試和調優;
8. 一些特殊的測試
主要是指配置測試,內存泄露測試的一些特殊的WEB性能測試;
二、WEB 性能測試策略
性能測試策略一般從需求設計階段開始討論如何定制,它決定著性能測試工作要投入多少資源,什么時間開始實施等后續工作的安排;其制定的主要依據是軟件自身的特點和用戶對性能的關注程度,其中軟件自身的特點起決定性的作用;
軟件按照用途的不同可以分為兩大類,系統類軟件和應用類軟件。系統類軟件通常對性能要求較高,因此性能測試應該盡早介入;應用類軟件分為特殊類應用和一般類應用,特殊類應用主要有銀行,電信,電力,保險,醫療,安全等領域軟件,這類軟件使用頻繁,用戶較多,也需要較早進行性能測試;一般類主要是指一些普通類應用如OA,MIS 等一般類軟件根據實際情況制定性能測試策略,受用戶因素影響較大;
1. 系統類軟件
從設計階段就開始針對系統架構,數據庫設計等方面進行討論,從根源來提高性能,系統類軟件一般從單元測試階段開始性能測試實施工作,主要是測試一些和性能相關的算法和模塊;
2. 應用類軟件
特殊應用:從設計階段就開始針對系統架構,數據庫設計等方面進行討論,從根源來提高性能,系統類軟件一般從單元測試階段開始性能測試實施工作,主要是測試一些和性能相關的算法和模塊;
一般應用:與使用用戶的重視程度有關,用戶高度重視時 ,設計階段開始進行一些討論工作,主要在系統測試階段開始進行性能測試實施;用戶一般重視時,可以在系統測試階段的功能測試結束后進行性能測試;用戶不怎么重視時,可以在軟件發布前進行性能測試,提交測試報告即可;
三、WEB性能測試用例設計模型
性能測試用例設計通常不會一次設計到位,是一個不斷迭代完善的過程,即使在使用過程中,也不是完全按照設計好的測試用例來執行,需要根據需求的變化進行調整和修改; WEB性能測試用例設計模型是一個內容全面比較容易組織和調整的模型架構。
1. 預期性能指標測試用例
指一些十分明確的,在系統需求設計階段預先提出的,期望系統達到的,或者向用戶保證的性能指標,針對每個指標都要編寫一個或者多個測試用例來驗證系統是否達到要求,預期性能指標測試用例主要參考需求和設計文檔,把里面十分明確的性能要求提取出來,指標中通常以單用戶為主;
如:對于普通的客戶端,系統上傳5MB以內的文件,速度不低于2MB/S;
輸入動作:選擇1-5 MB的文件并上傳,用秒表計時;
期望的性能:上傳的時間小于等于2.5S
實際性能:上傳的時間2.29秒;
這類用例通常以手工的方式執行。
文章來源于領測軟件測試網 http://www.kjueaiud.com/