當(dāng)前位置:澤眾軟件測試網(wǎng)- 技術(shù)文章 -正文

web性能測試用例設(shè)計(jì)策略及方法

發(fā)布時(shí)間:2020-07-27

web性能測試策略一般從需求設(shè)計(jì)階段開始討論如何定制,它決定著性能測試工作要投入多少資源,什么時(shí)間開始實(shí)施等后續(xù)工作的安排;其制定的主要依據(jù)是軟件自身的特點(diǎn)和用戶對性能的關(guān)注程度,其中軟件自身的軟件按照用途的不同可以分為兩大類,系統(tǒng)類軟件和應(yīng)用類軟件。系統(tǒng)類軟件通常對性能要求較高,因此性能測試應(yīng)該盡早介入;應(yīng)用類軟件分為特殊類應(yīng)用和一般類應(yīng)用,特殊類應(yīng)用主要有銀行,電信,電力,保險(xiǎn),醫(yī)療,安全等領(lǐng)域軟件,這類軟件使用頻繁,用戶較多,也需要較早進(jìn)行性能測試;一般類主要是指一些普通類應(yīng)用如OA,MIS 等一般類軟件根據(jù)實(shí)際情況制定性能測試策略,受用戶因素影響較大;

Web性能測試

1. 系統(tǒng)類軟件:

從設(shè)計(jì)階段就開始針對系統(tǒng)架構(gòu),數(shù)據(jù)庫設(shè)計(jì)等方面進(jìn)行討論,從根源來提高性能,系統(tǒng)類軟件一般從單元測試階段開始性能測試實(shí)施工作,主要是測試一些和性能相關(guān)的算法和模塊;

2. 應(yīng)用類軟件:

特殊應(yīng)用:從設(shè)計(jì)階段就開始針對系統(tǒng)架構(gòu),數(shù)據(jù)庫設(shè)計(jì)等方面進(jìn)行討論,從根源來提高性能,系統(tǒng)類軟件一般從單元測試階段開始性能測試實(shí)施工作,主要是測試一些和性能相關(guān)的算法和模塊;

一般應(yīng)用:與使用用戶的重視程度有關(guān),用戶高度重視時(shí) ,設(shè)計(jì)階段開始進(jìn)行一些討論工作,主要在系統(tǒng)測試階段開始進(jìn)行性能測試實(shí)施;用戶一般重視時(shí),可以在系統(tǒng)測試階段的功能測試結(jié)束后進(jìn)行性能測試;用戶不怎么重視時(shí),可以在軟件發(fā)布前進(jìn)行性能測試,提交測試報(bào)告即可;

WEB性能測試用例設(shè)計(jì)模型

性能測試用例設(shè)計(jì)通常不會(huì)一次設(shè)計(jì)到位,是一個(gè)不斷迭代完善的過程,即使在使用過程中,也不是完全按照設(shè)計(jì)好的測試用例來執(zhí)行,需要根據(jù)需求的變化進(jìn)行調(diào)整和修改; WEB性能測試用例設(shè)計(jì)模型是一個(gè)內(nèi)容全面比較容易組織和調(diào)整的模型架構(gòu)。

1.預(yù)期性能指標(biāo)測試用例;

指一些十分明確的,在系統(tǒng)需求設(shè)計(jì)階段預(yù)先提出的,期望系統(tǒng)達(dá)到的,或者向用戶保證的性能指標(biāo),針對每個(gè)指標(biāo)都要編寫一個(gè)或者多個(gè)測試用例來驗(yàn)證系統(tǒng)是否達(dá)到要求,預(yù)期性能指標(biāo)測試用例主要參考需求和設(shè)計(jì)文檔,把里面十分明確的性能要求提取出來,指標(biāo)中通常以單用戶為主;

如:對于普通的客戶端,系統(tǒng)上傳5MB以內(nèi)的文件,速度不低于2MB/S;輸入動(dòng)作:選擇1-5 MB的文件并上傳,用秒表計(jì)時(shí);期望的性能:上傳的時(shí)間小于等于2.5S實(shí)際性能: 上傳的時(shí)間2.29秒;這類用例通常以手工的方式執(zhí)行;

2.用戶并發(fā)性能測試用例;

用戶并發(fā)測試主要通過逐漸增加用戶數(shù)量來加重系統(tǒng)負(fù)擔(dān),并通過測試工具對應(yīng)用系統(tǒng),各種服務(wù)器資源進(jìn)監(jiān)控,用戶并發(fā)測試可以是正常數(shù)量用戶和特殊數(shù)量用戶進(jìn)行并發(fā), 用戶并發(fā)測試是系統(tǒng)性能測試的核心部分,涉及壓力測試,負(fù)載測試,強(qiáng)度測試等多方面的內(nèi)容。

獨(dú)立業(yè)務(wù)性能測試實(shí)際就是核心業(yè)務(wù)模塊的某一業(yè)務(wù)的并發(fā)性能測試,可以理解為單元性能測試;組合業(yè)務(wù)的性能測試是一個(gè)或者多個(gè)模塊的多個(gè)業(yè)務(wù)同時(shí)進(jìn)行并發(fā)性能測試,可以理解為集成性能測試,單元性能測試和集成性能測試兩者緊密相連合并稱為用戶并發(fā)性能測試;用戶并發(fā)測試要求選擇有代表性的關(guān)鍵的業(yè)務(wù)來設(shè)計(jì)測試用例,以便更有效的評測系統(tǒng)性能;其測試用例設(shè)計(jì)文檔的基本的編寫思想是按照系統(tǒng)的體系結(jié)構(gòu)進(jìn)行編寫。

組合模塊的性能測試是最能反映用戶實(shí)際使用情況的測試,它把前面系統(tǒng)中具有耦合關(guān)系的模塊組合起來進(jìn)行測試,可以理解為集成性能測試,組合模塊并發(fā)測試可以真實(shí)反映用戶使用系統(tǒng)的情況,可以從需求,設(shè)計(jì)文檔;現(xiàn)場調(diào)查,系統(tǒng)采集數(shù)據(jù)獲取用戶場景;具有耦合關(guān)系的核心模塊進(jìn)行組合并發(fā)測試:主要測試在多用戶并發(fā)條件下,一些存在耦合關(guān)系或者數(shù)據(jù)接口的模塊是否正常運(yùn)行;彼此獨(dú)立的,內(nèi)部具有耦合關(guān)系的核心模塊組的并發(fā)測試:這類測試的對象是多個(gè)模塊組,每個(gè)組相關(guān)的模塊具有一定的耦合關(guān)系,組與組之間關(guān)系相互獨(dú)立,主要站在用戶的角度考慮問題;

基于用戶場景的并發(fā)測試:選擇用戶的一些典型場景進(jìn)行測試,測試對象不限制于核心模塊或非核心模塊;

組合模塊用戶并發(fā)性能測試的前兩種類型仍然是針對核心模塊的同時(shí)也關(guān)注用戶場景,這樣做的原因是大多數(shù)的性能問題都是由用戶經(jīng)常使用的核心模塊一起的;可以看出,組合模塊的用戶并發(fā)性能測試既關(guān)注功能測試,也關(guān)注性能測試,通過發(fā)現(xiàn)一些接口和綜合性能方面的問題,使系統(tǒng)更加穩(wěn)定的運(yùn)行。

疲勞強(qiáng)度與大數(shù)據(jù)量測試;疲勞強(qiáng)度測試:主要特點(diǎn)是長時(shí)間對目標(biāo)測試系統(tǒng)加壓,目的是測試系統(tǒng)的穩(wěn)定性,持續(xù)時(shí)間一般在1小時(shí)以上;

疲勞強(qiáng)度測試屬于用戶并發(fā)測試的延續(xù),因此核心內(nèi)容仍然是核心模塊用戶并發(fā)和組合模塊用戶并發(fā),在編寫測試用例時(shí)需要編寫不同參數(shù)或者負(fù)載條件下的多個(gè)測試用例,可以參考用戶并發(fā)性能測試用例的設(shè)計(jì)內(nèi)容,通常修改相應(yīng)的參數(shù)就可實(shí)現(xiàn)所需要的測試場景;

大數(shù)據(jù)量測試:主要針對對數(shù)據(jù)庫有特殊要求的系統(tǒng)進(jìn)行的測試,如電信業(yè)務(wù)系統(tǒng)的手機(jī)短信業(yè)務(wù);可以分為實(shí)時(shí)大數(shù)據(jù)量,主要目的是測試用戶較多或者某些業(yè)務(wù)產(chǎn)生較大數(shù)據(jù)量時(shí),系統(tǒng)能否穩(wěn)定運(yùn)行;極限狀態(tài)下的測試,測試系統(tǒng)使用一段時(shí)間即系統(tǒng)累計(jì)一點(diǎn)量的數(shù)據(jù)時(shí)能否正常的運(yùn)行業(yè)務(wù);前面兩種的結(jié)合,測試系統(tǒng)已經(jīng)累計(jì)了較大數(shù)據(jù)量時(shí),一些實(shí)時(shí)產(chǎn)生較大數(shù)據(jù)量的模塊能否穩(wěn)定工作;

基于硬件的測試:主要是通過各種軟件工具,儀器等測試整個(gè)系統(tǒng)的網(wǎng)絡(luò)運(yùn)行環(huán)境,一般由系統(tǒng)集成人員負(fù)責(zé) ;基于應(yīng)用系統(tǒng)的測試:主要測試用戶數(shù)目與網(wǎng)絡(luò)帶寬的關(guān)系,通過測試工具準(zhǔn)確展示帶寬,延遲,負(fù)載和端口的變化是如何影響用戶響應(yīng)時(shí)間的;網(wǎng)絡(luò)性能測試的用例設(shè)計(jì)主要針對后一種類型,可以獨(dú)立進(jìn)行測試,也可以和用戶并發(fā)性能測試,疲勞強(qiáng)度與大數(shù)據(jù)量測試結(jié)合起來,在原有的基礎(chǔ)上采用工具來調(diào)整網(wǎng)絡(luò)設(shè)置,從而達(dá)到監(jiān)視網(wǎng)絡(luò)性能的目的;

服務(wù)器性能測試主要是對數(shù)據(jù)庫,WEB服務(wù)器,操作系統(tǒng)的測試,目的是通過性能測試找出服務(wù)器的瓶頸,為系統(tǒng)擴(kuò)展,優(yōu)化提供相關(guān)的依據(jù);分為:高級服務(wù)器性能測試:在特定的硬件條件下,由數(shù)據(jù)庫,WEB服務(wù)器,操作系統(tǒng)相應(yīng)領(lǐng)域的專家進(jìn)行的性能測試;

初級服務(wù)器性能測試:在系統(tǒng)運(yùn)行前面的性能測試時(shí),通過測試工具對數(shù)據(jù)庫,WEB服務(wù)器,操作系統(tǒng)的使用情況進(jìn)行監(jiān)控,然后進(jìn)行綜合分析,找出系統(tǒng)瓶頸;性能測試的主要目的是在軟件功能良好的前提下,發(fā)現(xiàn)系統(tǒng)瓶頸并解決,而軟件和服務(wù)器是產(chǎn)生瓶頸的兩大來源,因此服務(wù)器測試一定要和前面的測試結(jié)合起來進(jìn)行;在進(jìn)行用戶并發(fā)性能測試,疲勞強(qiáng)度與大數(shù)據(jù)量性能測試時(shí),可以完成對服務(wù)器的監(jiān)控并對服務(wù)器性能進(jìn)行評估;這類部分的測試用例一般不必單獨(dú)編寫;

總之,性能測試用例的設(shè)計(jì)是需要通過不斷分析總結(jié)才能做好,不但要分析性能測試用例的可用性,執(zhí)行效果,執(zhí)行時(shí)間,還應(yīng)該分析用例的設(shè)計(jì)方法,設(shè)計(jì)思路等。

推薦閱讀:

Web性能測試中,B/S與C/S架構(gòu)的性能指標(biāo)一般需要哪些內(nèi)容?

進(jìn)行web負(fù)載測試的幾個(gè)主要步驟

高并發(fā)系統(tǒng)性能測試之性能調(diào)優(yōu)和優(yōu)化策略

如何開展數(shù)據(jù)庫系統(tǒng)的性能需求分析?如何制定數(shù)據(jù)庫能力評估模型?

帶您理解解負(fù)載測試怎么做及負(fù)載測試工具

什么是WebSocket?有哪些支持WebSocket協(xié)議的壓力測試工具?

大型web網(wǎng)站壓力測試技巧及常見的web頁面性能測試工具

Web性能測試用例設(shè)計(jì)方法及分析

Web壓力測試怎么測?壓力測試怎么確定并發(fā)數(shù)?

本文內(nèi)容不用于商業(yè)目的,如涉及知識(shí)產(chǎn)權(quán)問題,請權(quán)利人聯(lián)系SPASVO小編(021-60725088-8054),我們將立即處理,馬上刪除。
滬ICP備07036474號(hào) 2003-2024 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd.
微信
咨詢

添加客服微信 歡迎咨詢測試工具和測試服務(wù)

微信客服
問題
反饋
產(chǎn)品
畫冊

掃描二維碼下載澤眾軟件企業(yè)宣傳冊

產(chǎn)品畫冊
返回
頂部

方案咨詢

×
提交信息

電話咨詢,400-035-7887,安排專業(yè)技術(shù)售前給您解答(產(chǎn)品試用、技術(shù)交流、服務(wù)咨詢和商務(wù)報(bào)價(jià))。

您的信息已成功提交!

我們的客服人員稍后會(huì)與您聯(lián)系