資源描述:
《web性能測試方案》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、Web性能測試方案1測試目的此處闡述本次性能測試的目的,包括必要性分析與擴(kuò)展性描述。性能測試最主要的目的是檢驗(yàn)當(dāng)前系統(tǒng)所處的性能水平,驗(yàn)證其性能是否能滿足未來應(yīng)用的需求,并進(jìn)一步找出系統(tǒng)設(shè)計(jì)上的瓶頸,以期改善系統(tǒng)性能,達(dá)到用戶的要求。2測試范圍此處主要描述本次性能測試的技術(shù)及業(yè)務(wù)背景,以及性能測試的特點(diǎn)。編寫此方案的目的是為云應(yīng)用產(chǎn)品提供web性能測試的方法,因此方案內(nèi)容主要包括測試環(huán)境、測試工具、測試策略、測試指標(biāo)與測試執(zhí)行等。2.1測試背景以云采業(yè)務(wù)為例,要滿足用戶在互聯(lián)網(wǎng)集中采購的要求,實(shí)際業(yè)務(wù)中通過云采平臺(tái)詢報(bào)價(jià)、下單的頻率較高,因此云采平臺(tái)的性能直接決定
2、了業(yè)務(wù)處理的效率,并能夠支撐業(yè)務(wù)并發(fā)的壓力。例如:支撐100家企業(yè)用戶的集中訪問,以及業(yè)務(wù)處理要求。2.2性能度量指標(biāo)響應(yīng)時(shí)間(TTLB)即“timetolastbyte”,指的是從客戶端發(fā)起的一個(gè)請(qǐng)求開始,到客戶端接收到從服務(wù)器端返回的響應(yīng)結(jié)束,這個(gè)過程所耗費(fèi)的時(shí)間,響應(yīng)時(shí)間的單位一般為“秒”或者“毫秒”。響應(yīng)時(shí)間=網(wǎng)絡(luò)響應(yīng)時(shí)間+應(yīng)用程序響應(yīng)時(shí)間。響應(yīng)時(shí)間標(biāo)準(zhǔn):序號(hào)時(shí)間度量標(biāo)準(zhǔn)結(jié)果1小于2s優(yōu)2介于2s-5s良3介于5s-8s一般4大于8s差事務(wù)能力TPS(transactionpersecond)服務(wù)器每秒處理的事務(wù)數(shù);一個(gè)事務(wù)是指一個(gè)客戶機(jī)向服務(wù)器發(fā)送請(qǐng)求然
3、后服務(wù)器做出反應(yīng)的過程。客戶機(jī)在發(fā)送請(qǐng)求時(shí)開始計(jì)時(shí),收到服務(wù)器響應(yīng)后結(jié)束計(jì)時(shí),一次來計(jì)算使用的時(shí)間和完成的事務(wù)個(gè)數(shù)。它是衡量系統(tǒng)處理能力的重要指標(biāo)。并發(fā)用戶數(shù)同一時(shí)刻與服務(wù)器進(jìn)行交互的在線用戶數(shù)量。吞吐率(Throughput)單位時(shí)間內(nèi)網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)量,也可指單位時(shí)間內(nèi)處理的客戶端請(qǐng)求數(shù)量,是衡量網(wǎng)絡(luò)性能的重要指標(biāo)。吞吐率=吞吐量/傳輸時(shí)間資源利用率這里主要指CPU利用率(CPUutilization),內(nèi)存占用率。3測試內(nèi)容此處對(duì)性能測試整體計(jì)劃進(jìn)行描述,包括測試內(nèi)容以及關(guān)注的性能指標(biāo)。Web性能測試內(nèi)容包含:壓力測試、負(fù)載測試、前端連接測試。3.1負(fù)載測試
4、負(fù)載測試是為了測量Web系統(tǒng)在某一負(fù)載級(jí)別上的性能,以保證Web系統(tǒng)在需求范圍內(nèi)能正常工作。負(fù)載級(jí)別可以是某個(gè)時(shí)刻同時(shí)訪問Web系統(tǒng)的用戶數(shù)量,也可以是在線數(shù)據(jù)處理的數(shù)量。例如:Web應(yīng)用系統(tǒng)能允許多少個(gè)用戶同時(shí)在線?如果超過了這個(gè)數(shù)量,會(huì)出現(xiàn)什么現(xiàn)象?Web應(yīng)用系統(tǒng)能否處理大量用戶對(duì)同一個(gè)頁面的請(qǐng)求?負(fù)載測試應(yīng)該安排在Web系統(tǒng)發(fā)布以后,放在Internet上接受負(fù)載測試。3.2壓力測試在一定飽和狀態(tài)下系統(tǒng)的處理能力,在負(fù)載測試的基礎(chǔ)上,繼續(xù)加壓到一定階段即是壓力測試。壓力測試通常設(shè)定cpu使用率達(dá)到75%以上,內(nèi)存使用率達(dá)到70%以上,用于測試系統(tǒng)在壓力環(huán)
5、境下的穩(wěn)定性。進(jìn)行壓力測試是指實(shí)際破壞一個(gè)Web應(yīng)用系統(tǒng),測試系統(tǒng)的反映。壓力測試是測試系統(tǒng)的限制和故障恢復(fù)能力,也就是測試Web應(yīng)用系統(tǒng)會(huì)不會(huì)崩潰,在什么情況下會(huì)崩潰。黑客常常提供錯(cuò)誤的數(shù)據(jù)負(fù)載,直到Web應(yīng)用系統(tǒng)崩潰,接著當(dāng)系統(tǒng)重新啟動(dòng)時(shí)獲得存取權(quán)。3.3前端連接測試用戶連接到Web應(yīng)用系統(tǒng)的速度根據(jù)上網(wǎng)方式的變化而變化,他們或許是電話撥號(hào),或是寬帶上網(wǎng)。當(dāng)下載一個(gè)程序時(shí),用戶可以等較長的時(shí)間,但如果僅僅訪問一個(gè)頁面就不會(huì)這樣。如果Web系統(tǒng)響應(yīng)時(shí)間太長(例如超過5秒鐘),用戶就會(huì)因沒有耐心等待而離開。另外,有些頁面有超時(shí)的限制,如果響應(yīng)速度太慢,用戶可能還
6、沒來得及瀏覽內(nèi)容,就需要重新登陸了。而且,連接速度太慢,還可能引起數(shù)據(jù)丟失,使用戶得不到真實(shí)的頁面。以上需要關(guān)注的前端性能指標(biāo),主要包含以下三個(gè)指標(biāo):3.3.1加載時(shí)間指標(biāo)a.TimetoFirstImpression 表示從用戶在瀏覽器鍵入U(xiǎn)RL按下回車鍵一刻開始,到頁面開始有反應(yīng)(用戶可以在頁面中看見一點(diǎn)點(diǎn)內(nèi)容)為止。直觀信號(hào)就是網(wǎng)頁開始顯示title?! .TimetoonLoadEvent 表示從頁面開始顯示內(nèi)容,到瀏覽器開始觸發(fā)OnLoad函數(shù)(開始執(zhí)行js)這一時(shí)間段。只有當(dāng)初始的文本和所引用的對(duì)象加載完成,瀏覽器才開始觸發(fā)OnLoad函數(shù) c
7、.TimetoFullyLoaded表示從上一時(shí)間段末到整個(gè)網(wǎng)頁完全加載完成(所有OnLoad函數(shù)以及相關(guān)的動(dòng)態(tài)資源加載完成)。3.3.2資源情況指標(biāo)網(wǎng)頁由初始的html文本中嵌入圖片以及通過XHR或者修改dom樹動(dòng)態(tài)加載的內(nèi)容組成,css負(fù)責(zé)樣式,js負(fù)責(zé)行為?! .TotalNumberofRequests 包括html網(wǎng)頁請(qǐng)求,css、js資源下載及其它網(wǎng)絡(luò)請(qǐng)求。優(yōu)化的目標(biāo)之一是要盡量減少請(qǐng)求數(shù)?! .TotalNumberofHTTP300s/400s/500s 表示返回狀態(tài)為300(重定向)、400(客戶端錯(cuò)誤)、500(服務(wù)器端錯(cuò)誤)的http
8、請(qǐng)求。盡量