二、性能測試
網(wǎng)站的性能測試對于網(wǎng)站的運行而言異常重要,但是目前對于網(wǎng)站的性能測試做的不夠,我們在進(jìn)行系統設計時(shí)也沒(méi)有一個(gè)很好的基準可以參考,因而建立網(wǎng)站的性能測試的一整套的測試方案將是至關(guān)重要的。
網(wǎng)站的性能測試主要從三個(gè)方面進(jìn)行:連接速度測試、負荷測試(Load)和壓力測試(Stress),
連接速度測試指的是打開(kāi)網(wǎng)頁(yè)的響應速度測試。負荷測試指的是進(jìn)行一些邊界數據的測試,壓力測試更像是惡意測試,壓力測試傾向應該是致使整個(gè)系統崩潰。
1、連接速度測試
用戶(hù)連接到Web應用系統的速度根據上網(wǎng)方式的變化而變化,他們或許是電話(huà)撥號,或是寬帶上網(wǎng)。當下載一個(gè)程序時(shí),用戶(hù)可以等較長(cháng)的時(shí)間,但如果僅僅訪(fǎng)問(wèn)一個(gè)頁(yè)面就不會(huì )這樣。如果Web系統響應時(shí)間太長(cháng)(例如超過(guò)5秒鐘),用戶(hù)就會(huì )因沒(méi)有耐心等待而離開(kāi)。
另外,有些頁(yè)面有超時(shí)的限制,如果響應速度太慢,用戶(hù)可能還沒(méi)來(lái)得及瀏覽內容,就需要重新登陸了。而且,連接速度太慢,還可能引起數據丟失,使用戶(hù)得不到真實(shí)的頁(yè)面。
2、負載測試
負載測試是為了測量Web系統在某一負載級別上的性能,以保證Web系統在需求范圍內能正常工作。負載級別可以是某個(gè)時(shí)刻同時(shí)訪(fǎng)問(wèn)Web系統的用戶(hù)數量,也可以是在線(xiàn)數據處理的數量。例如:Web應用系統能允許多少個(gè)用戶(hù)同時(shí)在線(xiàn)?如果超過(guò)了這個(gè)數量,會(huì )出現什么現象?Web應用系統能否處理大量用戶(hù)對同一個(gè)頁(yè)面的請求?
3、壓力測試
負載測試應該安排在Web系統發(fā)布以后,在實(shí)際的網(wǎng)絡(luò )環(huán)境中進(jìn)行測試。因為一個(gè)企業(yè)內部員工,特別是項目組人員總是有限的,而一個(gè)Web系統能同時(shí)處理的請求數量將遠遠超出這個(gè)限度,所以,只有放在Internet上,接受負載測試,其結果才是正確可信的。
進(jìn)行壓力測試是指實(shí)際破壞一個(gè)Web應用系統,測試系統的反映。壓力測試是測試系統的限制和故障恢復能力,也就是測試Web應用系統會(huì )不會(huì )崩潰,在什么情況下會(huì )崩潰。黑客常常提供錯誤的數據負載,直到Web應用系統崩潰,接著(zhù)當系統重新啟動(dòng)時(shí)獲得存取權。
壓力測試的區域包括表單、登陸和其他信息傳輸頁(yè)面等。
采用的測試工具:
性能測試可以采用相應的工具進(jìn)行自動(dòng)化測試,我們目前采用如下工具
ab -----Apache 的測試工具
OpenSTA—開(kāi)發(fā)系統測試架構
三、接口測試
在很多情況下,web 站點(diǎn)不是孤立。Web 站點(diǎn)可能會(huì )與外部服務(wù)器通訊,請求數據、
驗證數據或提交訂單。
1、 服務(wù)器接口
第一個(gè)需要測試的接口是瀏覽器與服務(wù)器的接口。測試人員提交事務(wù),然后查看服務(wù)器
記錄,并驗證在瀏覽器上看到的正好是服務(wù)器上發(fā)生的。測試人員還可以查詢(xún)數據庫,確認事務(wù)數據已正確保存。
2、 外部接口
有些 web 系統有外部接口。例如,網(wǎng)上商店可能要實(shí)時(shí)驗證信用卡數據以減少欺詐行
為的發(fā)生。測試的時(shí)候,要使用 web 接口發(fā)送一些事務(wù)數據,分別對有效信用卡、無(wú)效信用卡和被盜信用卡進(jìn)行驗證。如果商店只使用 Visa 卡和 Mastercard 卡, 可以嘗試使用 Discover 卡的數據。(簡(jiǎn)單的客戶(hù)端腳本能夠在提交事務(wù)之前對代碼進(jìn)行識別,例如 3 表示 American Express,4 表示 Visa,5 表示 Mastercard,6 代表Discover。)通常,測試人員需要確認軟件能夠處理外部服務(wù)器返回的所有可能的消息。
3、錯誤處理
最容易被測試人員忽略的地方是接口錯誤處理。通常我們試圖確認系統能夠處理所有錯
誤,但卻無(wú)法預期系統所有可能的錯誤。嘗試在處理過(guò)程中中斷事務(wù),看看會(huì )發(fā)生什么情況?
訂單是否完成?嘗試中斷用戶(hù)到服務(wù)器的網(wǎng)絡(luò )連接。嘗試中斷 web 服務(wù)器到信用卡驗證服
務(wù)器的連接。在這些情況下,系統能否正確處理這些錯誤?是否已對信用卡進(jìn)行收費?如果
用戶(hù)自己中斷事務(wù)處理,在訂單已保存而用戶(hù)沒(méi)有返回網(wǎng)站確認的時(shí)候,需要由客戶(hù)代表致
電用戶(hù)進(jìn)行訂單確認。
相關(guān)推薦:考試吧策劃:2010年軟件水平考試完全指南北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |