發(fā)布時(shí)間:2020-07-25
性能測(cè)試最想發(fā)現(xiàn)的,是瓶頸。做性能測(cè)試需要一個(gè)規(guī)范的流程,劃分清各個(gè)階段需要做哪些工作,這樣我們?cè)诮拥揭粋€(gè)任務(wù)時(shí)就不會(huì)手忙腳亂。
Web測(cè)試中,B/S與C/S架構(gòu)的區(qū)別和聯(lián)系:
①B/S最大的優(yōu)點(diǎn)就是可以在任何地方進(jìn)行操作而不用安裝任何專(zhuān)門(mén)的軟件。只要有一臺(tái)能上網(wǎng)的電腦就能使用,客戶(hù)端零維護(hù)。系統(tǒng)的擴(kuò)展非常容易。
②C/S架構(gòu)可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),將任務(wù)合理分配到Client端和Server端來(lái)實(shí)現(xiàn)。
③C/S結(jié)構(gòu)的軟件需要針對(duì)不同的操作系統(tǒng)開(kāi)發(fā)不同版本的軟件,導(dǎo)致產(chǎn)品的更新?lián)Q代需要快,更新的代價(jià)高,效率低。
④C/S和B/S并沒(méi)有本質(zhì)的區(qū)別:B/S是基于特定通信協(xié)議(HTTP)的C/S架構(gòu),也就是說(shuō)B/S包含在C/S中,是特殊的C/S架構(gòu)。
性能測(cè)試流程大致分為以下幾個(gè)階段:
1、測(cè)試準(zhǔn)備;
2、腳本開(kāi)發(fā)與調(diào)試;
3、測(cè)試執(zhí)行;
4、測(cè)試結(jié)果評(píng)估;
5、測(cè)試后跟蹤;
測(cè)試準(zhǔn)備包括:
1、測(cè)試目標(biāo):從需求文檔或者用戶(hù)獲?。翰l(fā)用戶(hù)數(shù),事務(wù)吞吐需求,響應(yīng)時(shí)間需求,系統(tǒng)占用資源需求,可擴(kuò)展性需求等;
2、應(yīng)用軟件:從開(kāi)發(fā)人員獲?。合到y(tǒng)整體架構(gòu)(BS/CS),采用開(kāi)發(fā)語(yǔ)言,通信協(xié)議,動(dòng)態(tài)session,驗(yàn)證碼等;
3、系統(tǒng)部署平臺(tái):從運(yùn)維人員獲?。何锢聿渴穑ň钟蚓W(wǎng)/虛擬機(jī)),硬件架構(gòu)(CPU/MEM/IO),操作系統(tǒng),數(shù)據(jù)庫(kù)(版本/啟動(dòng)參數(shù)/存儲(chǔ)布局),中間件(參數(shù)配置),部署模式等;
4、系統(tǒng)負(fù)載模型:通過(guò)調(diào)研獲取從業(yè)務(wù)層面選取關(guān)鍵用例吞吐率以及用戶(hù)行為習(xí)慣,確定測(cè)試流程及流程業(yè)務(wù)比例;從系統(tǒng)負(fù)載方面了解高峰/平常場(chǎng)景吞吐率;
5、制定測(cè)試計(jì)劃和測(cè)試方案:測(cè)試腳本是做好性能測(cè)試的基礎(chǔ),監(jiān)控結(jié)果是性能測(cè)試的關(guān)鍵;扎實(shí)的代碼基礎(chǔ)和熟練掌握監(jiān)控結(jié)果的收集和分析是性能測(cè)試的保障;系統(tǒng)上線后,對(duì)實(shí)際負(fù)載與性能情況和測(cè)試過(guò)程中做比較總結(jié)經(jīng)驗(yàn)也是學(xué)習(xí)提高的好方法。
在實(shí)際中作中我們經(jīng)常會(huì)對(duì)兩種類(lèi)型軟件進(jìn)行測(cè)試:bs和cs,這兩方面的性能指標(biāo)一般需要哪些內(nèi)容呢?
Bs結(jié)構(gòu)程序一般會(huì)關(guān)注的通用指標(biāo)如下:
Web服務(wù)器指標(biāo)指標(biāo):
* Avg Rps: 平均每秒鐘響應(yīng)次數(shù)=總請(qǐng)求時(shí)間 / 秒數(shù);
* Avg time to last byte per terstion (mstes):平均每秒業(yè)務(wù)角本的迭代次數(shù) ,有人會(huì)把這兩者混淆;
* Successful Rounds:成功的請(qǐng)求;
* Failed Rounds :失敗的請(qǐng)求;
* Successful Hits :成功的點(diǎn)擊次數(shù);
* Failed Hits :失敗的點(diǎn)擊次數(shù);
* Hits Per Second :每秒點(diǎn)擊次數(shù);
* Successful Hits Per Second :每秒成功的點(diǎn)擊次數(shù);
* Failed Hits Per Second :每秒失敗的點(diǎn)擊次數(shù);
* Attempted Connections :嘗試鏈接數(shù);
CS結(jié)構(gòu)程序,由于一般軟件后臺(tái)通常為數(shù)據(jù)庫(kù),所以我們更注重?cái)?shù)據(jù)庫(kù)的測(cè)試指標(biāo):
* User 0 Connections :用戶(hù)連接數(shù),也就是數(shù)據(jù)庫(kù)的連接數(shù)量;
* Number of deadlocks:數(shù)據(jù)庫(kù)死鎖;
* Butter Cache hit :數(shù)據(jù)庫(kù)Cache的命中情況
當(dāng)然,在實(shí)際中我們還會(huì)察看多用戶(hù)測(cè)試情況下的內(nèi)存,CPU,系統(tǒng)資源調(diào)用情況。這些指標(biāo)其實(shí)是引申出來(lái)性能測(cè)試中的一種:競(jìng)爭(zhēng)測(cè)試。什么是競(jìng)爭(zhēng)測(cè)試,軟件競(jìng)爭(zhēng)使用各種資源(數(shù)據(jù)紀(jì)錄,內(nèi)存等),看他與其他相關(guān)系統(tǒng)對(duì)資源的爭(zhēng)奪能力。
我們知道軟件架構(gòu)在實(shí)際測(cè)試中制約著測(cè)試策略和測(cè)試工具的選擇。如何選擇性能測(cè)試策略是我們?cè)趯?shí)際工作中需要了解的。
一般軟件可以按照系統(tǒng)架構(gòu)分成幾種類(lèi)型:
c/s:client/Server 客戶(hù)端/服務(wù)器架構(gòu);基于客戶(hù)端/服務(wù)器的三層架構(gòu);基于客戶(hù)端/服務(wù)器的分布式架構(gòu)。
b/s:基于瀏覽器/Web服務(wù)器的三層架構(gòu);基于中間件應(yīng)用服務(wù)器的三層架構(gòu)l;基于Web服務(wù)器和中間件的多層架構(gòu)。
總的來(lái)說(shuō),性能測(cè)試中如何去測(cè)是有效的、有保障的,這才是測(cè)試工程師最重要的能力。
web性能測(cè)試文章推薦閱讀:
進(jìn)行web負(fù)載測(cè)試的幾個(gè)主要步驟
高并發(fā)系統(tǒng)性能測(cè)試之性能調(diào)優(yōu)和優(yōu)化策略
如何開(kāi)展數(shù)據(jù)庫(kù)系統(tǒng)的性能需求分析?如何制定數(shù)據(jù)庫(kù)能力評(píng)估模型?
帶您理解解負(fù)載測(cè)試怎么做及負(fù)載測(cè)試工具
全鏈路性能需求分析的要點(diǎn)是什么?和傳統(tǒng)線下性能測(cè)試有什么區(qū)別
什么是WebSocket?有哪些支持WebSocket協(xié)議的壓力測(cè)試工具?
性能壓測(cè)概念及性能壓測(cè)工具對(duì)比選型
cs項(xiàng)目怎么做性能測(cè)試?cs性能測(cè)試跟bs有什么區(qū)別?
大型web網(wǎng)站壓力測(cè)試技巧及常見(jiàn)的web頁(yè)面性能測(cè)試工具
Web壓力測(cè)試怎么測(cè)?壓力測(cè)試怎么確定并發(fā)數(shù)?
添加客服微信 歡迎咨詢(xún)測(cè)試工具和測(cè)試服務(wù)
掃描二維碼下載澤眾軟件企業(yè)宣傳冊(cè)
電話咨詢(xún),400-035-7887,安排專(zhuān)業(yè)技術(shù)售前給您解答(產(chǎn)品試用、技術(shù)交流、服務(wù)咨詢(xún)和商務(wù)報(bào)價(jià))。
您的信息已成功提交!
我們的客服人員稍后會(huì)與您聯(lián)系