Web應(yīng)用測(cè)試
Web應(yīng)用測(cè)試概述
Web瀏覽器和服務(wù)器之間采用超文本傳送協(xié)議(HTTP)進(jìn)行通信刊咳。HTTP協(xié)議是基于TCP/IP之上的協(xié)議,屬于應(yīng)用層協(xié)議囤踩,是通用的近弟、無(wú)狀態(tài)的届谈、面向?qū)ο蟮膮f(xié)議。HTTP協(xié)議的作用原理包括四個(gè)步驟:連接弯汰,請(qǐng)求艰山,應(yīng)答,關(guān)閉咏闪。
連接:瀏覽器服務(wù)器建立連接曙搬,打開(kāi)一個(gè)稱為socket(套接字)的虛擬文件,此文件的建立標(biāo)志著連接建立成功鸽嫂。
請(qǐng)求:瀏覽器通過(guò)socket向服務(wù)器提交請(qǐng)求纵装。請(qǐng)求一般是GET或POST命令(POST用于FORM參數(shù)的傳遞)。
應(yīng)答:瀏覽器提交請(qǐng)求后据某,通過(guò)HTTP協(xié)議傳送給服務(wù)器橡娄。服務(wù)器接到后,進(jìn)行事務(wù)處理癣籽,處理結(jié)果又通過(guò)HTTP傳回給瀏覽器挽唉,從而在瀏覽器上顯示出所請(qǐng)求的頁(yè)面。
關(guān)閉連接:應(yīng)答結(jié)束后筷狼,瀏覽器與服務(wù)器必須斷開(kāi)瓶籽,以保證其他瀏覽器能夠與服務(wù)器建立連接。
Web應(yīng)用測(cè)試基本包括以下幾個(gè)方面:性能測(cè)試埂材、功能測(cè)試棘劣、界面測(cè)試、安全測(cè)試等楞遏。
Web應(yīng)用的性能測(cè)試
通過(guò)模擬多種正常負(fù)載茬暇、峰值以及異常負(fù)載條件同時(shí)訪問(wèn)Web服務(wù)器,來(lái)對(duì)系統(tǒng)的各項(xiàng)性能指標(biāo)進(jìn)行測(cè)試寡喝。
- Web性能測(cè)試的主要術(shù)語(yǔ)和性能指標(biāo)
并發(fā):多個(gè)用戶在同一時(shí)刻對(duì)系統(tǒng)發(fā)出了請(qǐng)求或者進(jìn)行了操作
請(qǐng)求響應(yīng)時(shí)間(TLLB):客戶端發(fā)出請(qǐng)求到得到響應(yīng)的整個(gè)過(guò)程的時(shí)間糙俗。
事務(wù)響應(yīng)時(shí)間:事務(wù)包括多個(gè)請(qǐng)求。
吞吐量:指的是在一次性能測(cè)試過(guò)程中網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)量的總和预鬓。
TPS:每秒鐘系統(tǒng)能夠處理的交易或者事務(wù)的數(shù)量巧骚。
點(diǎn)擊率:每秒鐘用戶向Web服務(wù)器提交的HTTP請(qǐng)求數(shù)。
資源利用率:對(duì)不同的系統(tǒng)資源的使用程度格二,例如服務(wù)器的CPU利用率劈彪,磁盤(pán)利用率等。
請(qǐng)求成功率:Web服務(wù)器正確處理的請(qǐng)求數(shù)量和接收到的請(qǐng)求數(shù)量的比顶猜。 - Web性能測(cè)試的目標(biāo)
(1)確定Web應(yīng)用系統(tǒng)的總體性能參數(shù)沧奴,包括所支持的最大并發(fā)用戶數(shù)、事務(wù)處理成功率长窄、請(qǐng)求相應(yīng)的往返延遲等滔吠。
(2)確定在各個(gè)級(jí)別的負(fù)載及壓力測(cè)試下服務(wù)器輸出的具體性能參數(shù)纲菌。 - Web應(yīng)用系統(tǒng)性能測(cè)試的種類
壓力測(cè)試測(cè)試系統(tǒng)的限制和故障恢復(fù)能力;負(fù)載測(cè)試測(cè)量Web系統(tǒng)在某一負(fù)載級(jí)別上的性能疮绷,保證系統(tǒng)在需求范圍內(nèi)能正常工作翰舌;強(qiáng)度測(cè)試測(cè)試系統(tǒng)在異常或極端條件(如資源減少或用戶數(shù)過(guò)多)之下的可接受性冬骚,以驗(yàn)證系統(tǒng)要求的軟硬件水平要求椅贱;數(shù)據(jù)庫(kù)容量測(cè)試確定系統(tǒng)在給定時(shí)間內(nèi)能夠持續(xù)處理的最大負(fù)載或工作量;預(yù)期指標(biāo)的性能測(cè)試只冻;獨(dú)立業(yè)務(wù)性能測(cè)試庇麦;組合業(yè)務(wù)性能測(cè)試; 疲勞強(qiáng)度性能測(cè)試在系統(tǒng)穩(wěn)定運(yùn)行的情況下属愤,以一定的負(fù)載壓力來(lái)長(zhǎng)時(shí)間運(yùn)行系統(tǒng)的測(cè)試,其主要目的是確定系統(tǒng)長(zhǎng)時(shí)間處理較大業(yè)務(wù)量時(shí)的性能酸役;網(wǎng)絡(luò)性能測(cè)試旨在準(zhǔn)確展示帶寬住诸、延遲、負(fù)載和端口的變化對(duì)用戶響應(yīng)時(shí)間的影響涣澡;大數(shù)據(jù)量測(cè)試針對(duì)對(duì)數(shù)據(jù)庫(kù)有特殊要求的系統(tǒng)進(jìn)行的測(cè)試贱呐,包括實(shí)時(shí)大數(shù)據(jù)量,極限狀態(tài)下的測(cè)試以及前面兩種的結(jié)合入桂;服務(wù)器性能測(cè)試奄薇;一些特殊的測(cè)試包括指配置測(cè)試,內(nèi)存泄露測(cè)試的一些特殊的Web性能測(cè)試抗愁。 - Web應(yīng)用系統(tǒng)全面性能測(cè)試模型
Web全面性能測(cè)試模型包括三個(gè)部分:(1)Web性能測(cè)試策略模型,結(jié)合軟件類型和用戶對(duì)性能重視程度討論Web性能測(cè)試策略制定的基本原則和方法(2)Web性能測(cè)試用例設(shè)計(jì)模型結(jié)合測(cè)試工具形成五類測(cè)試用例:預(yù)期指標(biāo)的性能測(cè)試沫屡;并發(fā)用戶的性能測(cè)試沮脖;疲勞強(qiáng)度和大數(shù)據(jù)量的性能測(cè)試;服務(wù)器性能測(cè)試勺届;網(wǎng)絡(luò)性能測(cè)試(3)模型使用方法討論如何在工作中使用模型。 - Web應(yīng)用系統(tǒng)性能測(cè)試流程
測(cè)試流程包括測(cè)試需求分析养泡、測(cè)試計(jì)劃制定與評(píng)審澜掩、測(cè)試用例設(shè)計(jì)與開(kāi)發(fā)刚陡、測(cè)試執(zhí)行與監(jiān)控筐乳、測(cè)試經(jīng)驗(yàn)總結(jié)。 - Web應(yīng)用的功能測(cè)試
功能測(cè)試包括鏈接測(cè)試勃刨、表單測(cè)試身隐、設(shè)計(jì)語(yǔ)言測(cè)試、數(shù)據(jù)庫(kù)測(cè)試垢揩、Cookies測(cè)試和相關(guān)性功能檢查。
表單:收集用戶的信息和反饋意見(jiàn)俘种,包括描述表單(例如宙刘,域,標(biāo)簽和用戶在頁(yè)面上看見(jiàn)的按鈕)的HTML源代碼和用于處理提交的信息的腳本或應(yīng)用程序(如CGI腳本)布近。
設(shè)計(jì)語(yǔ)言測(cè)試主要關(guān)注語(yǔ)言版本的問(wèn)題棵譬。
常見(jiàn)的數(shù)據(jù)庫(kù)錯(cuò)誤包括用戶提交的表單信息不正確造成的數(shù)據(jù)一致性錯(cuò)誤以及網(wǎng)絡(luò)速度或程序設(shè)計(jì)問(wèn)題等引起的輸出錯(cuò)誤。
相關(guān)性功能檢查包括:數(shù)據(jù)的增刪對(duì)其他項(xiàng)的影響脏嚷;列表默認(rèn)值檢查;按鈕的功能檢查趾唱;字符串長(zhǎng)度檢查爷怀;字符類型檢查烤惊;標(biāo)點(diǎn)符號(hào)檢查;特殊字符檢查雄右;中文字符處理;信息完整檢查逢渔;信息重復(fù)檢查智厌;刪除功能檢查盲赊;添加和修改是否一致檢查铣鹏;檢查修改重名;重復(fù)提交表單檢查吝沫;多次使用返回鍵的情況檢查递礼;搜索檢查脊髓;輸入信息位置檢查依疼;上傳下載文件檢查;必填項(xiàng)檢查;快捷鍵檢查翘狱;Enter鍵檢查;回退鍵檢查砰苍;空格檢查茬缩;輸入法半角全角檢查;密碼檢查辟癌;用戶檢查寒屯;系統(tǒng)數(shù)據(jù)檢查;系統(tǒng)可恢復(fù)性檢查;確認(rèn)提示檢查寡夹;數(shù)據(jù)注入檢查处面;時(shí)間日期檢查;多瀏覽器驗(yàn)證菩掏。 - Web應(yīng)用的界面測(cè)試
界面測(cè)試目標(biāo):(1)Web界面的實(shí)現(xiàn)與設(shè)計(jì)需求魂角、設(shè)計(jì)圖保持一致,或者符合可接受標(biāo)準(zhǔn)智绸。(2)使用恰當(dāng)?shù)目丶熬荆鱾€(gè)控件及其屬性符合標(biāo)準(zhǔn)。(3)通過(guò)瀏覽測(cè)試對(duì)象可正確反映業(yè)務(wù)的功能和需求瞧栗。(4)如果有不同瀏覽器兼容性的需求斯稳,則需要滿足在不同內(nèi)核瀏覽器中實(shí)現(xiàn)效果相同的目標(biāo)。
Web界面測(cè)試內(nèi)容:整體界面測(cè)試迹恐、控件測(cè)試挣惰、多媒體測(cè)試、內(nèi)容測(cè)試殴边、導(dǎo)航測(cè)試憎茂、容器測(cè)試、瀏覽器兼容性測(cè)試等锤岸。
Web頁(yè)面測(cè)試的基本準(zhǔn)則:易用性竖幔、正確性、規(guī)范性是偷、合理性拳氢、實(shí)用性、一致性晓猛、美觀與協(xié)調(diào)性饿幅、安全性凡辱。 - Web應(yīng)用的客戶端兼容性測(cè)試
包括平臺(tái)測(cè)試和瀏覽器測(cè)試戒职。 - Web應(yīng)用的安全性測(cè)試
Web應(yīng)用的安全一般要求:(1)能夠?qū)γ艽a試探工具進(jìn)行防范。(2)能夠防范對(duì)cookie攻擊等常用攻擊手段透乾。(3)敏感數(shù)據(jù)保證不用明文傳輸洪燥。(4)能防范通過(guò)文件名猜測(cè)和查看HTML文件內(nèi)容獲取重要信息。(5)能保證在網(wǎng)站收到工具后在給定時(shí)間內(nèi)恢復(fù)乳乌,重要數(shù)據(jù)丟失不超過(guò)1小時(shí)捧韵。
Web應(yīng)用安全性測(cè)試包括應(yīng)用級(jí)的安全測(cè)試與傳輸級(jí)的安全測(cè)試。
應(yīng)用級(jí)的安全測(cè)試:主要測(cè)試區(qū)域包括注冊(cè)與登錄汉操、在線超時(shí)再来、操作留痕、備份與恢復(fù)。
傳輸級(jí)的安全測(cè)試:主要包括HTTPS和SSL測(cè)試芒篷、服務(wù)器端的腳本漏洞檢查搜变、防火墻測(cè)試、數(shù)據(jù)加密測(cè)試针炉。