關(guān)于網(wǎng)站測(cè)試這個(gè)環(huán)節(jié),很多客戶都市不清楚甚至是模糊的,只知道網(wǎng)站有問(wèn)題了再找建站方,這顯然有些亡羊補(bǔ)牢的感覺(jué),而網(wǎng)站建設(shè)好,在還沒(méi)有正式上線之前,需要進(jìn)行測(cè)試,這樣能夠快速找出新站中有錯(cuò)誤的地方,為您分析下做網(wǎng)站測(cè)試的重要性。
第一是功能測(cè)試,就是測(cè)試一下網(wǎng)站功能是否已經(jīng)實(shí)現(xiàn),對(duì)于網(wǎng)站的測(cè)試而言,每一個(gè)獨(dú)立的功能模塊需要單獨(dú)的測(cè)試用例的設(shè)計(jì)導(dǎo)出,主要依據(jù)為《需求規(guī)格說(shuō)明書(shū)》及《詳細(xì)設(shè)計(jì)說(shuō)明書(shū)》,對(duì)于應(yīng)用程序模塊需要設(shè)計(jì)者提供基本路徑測(cè)試法的測(cè)試用例;第二是兼容性測(cè)試,測(cè)試的目的是:確保網(wǎng)站在不同瀏覽器、不同操作系統(tǒng)、不同時(shí)間點(diǎn)等因素下網(wǎng)站的前端展現(xiàn)是否一致;第三是壓力測(cè)試,100個(gè)同時(shí)訪問(wèn)網(wǎng)站和1000個(gè)人同時(shí)訪問(wèn)網(wǎng)站,系統(tǒng)的承壓能力肯定不一樣,這項(xiàng)內(nèi)容視客戶公司產(chǎn)品、行業(yè)而定,上海做網(wǎng)站公司一般行業(yè)的網(wǎng)站大都是不會(huì)做此項(xiàng)測(cè)試的;第四是安全測(cè)試,即模擬攻擊環(huán)境下,網(wǎng)站是不是依舊可以正常訪問(wèn)。
規(guī)范的測(cè)試是確保網(wǎng)站建設(shè)質(zhì)量的必需流程,再精良的設(shè)備再完備的流程也無(wú)法拒絕不良品的產(chǎn)出,為了降低不良率,惟一的辦法就是嚴(yán)把檢測(cè)關(guān),網(wǎng)站建設(shè)也是一樣,網(wǎng)站的品質(zhì)一方面取決于技術(shù)人員的技術(shù)和完善的項(xiàng)目管理機(jī)制,做網(wǎng)站測(cè)試這個(gè)環(huán)節(jié)不可缺少。
有的時(shí)候我們一個(gè)人可能沒(méi)有辦法檢測(cè)出全部的問(wèn)題,或多或少都會(huì)有一些遺漏,所以這就需要不同的人對(duì)網(wǎng)站進(jìn)行測(cè)試,才能多層次全方位的發(fā)現(xiàn)網(wǎng)站存在的問(wèn)題,及時(shí)的解決,最好讓客戶也參與測(cè)試,這樣更好。由此可見(jiàn)做網(wǎng)站測(cè)試的重要性,在新站建好后一定要進(jìn)行網(wǎng)站測(cè)試,這樣才能保證順利上線。
一、功能測(cè)試
1、鏈接測(cè)試
鏈接是Web應(yīng)用系統(tǒng)的一個(gè)主要特征,它是在頁(yè)面之間切換和指導(dǎo)用戶去一些不知道地址的頁(yè)面的主要手段。鏈接測(cè)試可分為三個(gè)方面:
1)測(cè)試所有鏈接是否按指示的那樣確實(shí)鏈接到了該鏈接的頁(yè)面;
2)測(cè)試所鏈接的頁(yè)面是否存在,不要出現(xiàn)死鏈;
3)保證Web應(yīng)用系統(tǒng)上沒(méi)有孤立的頁(yè)面,所謂孤立頁(yè)面是指沒(méi)有鏈接指向該頁(yè)面,只有知道正確的URL地址才能訪問(wèn)。
鏈接測(cè)試可以自動(dòng)進(jìn)行,現(xiàn)在已經(jīng)有許多工具可以采用。鏈接測(cè)試必須在集成測(cè)試階段完成,也就是說(shuō),在整個(gè)Web應(yīng)用系統(tǒng)的所有頁(yè)面開(kāi)發(fā)完成之后進(jìn)行鏈接測(cè)試。
Xenu------主要測(cè)試鏈接的正確性的工具,可惜的是對(duì)于動(dòng)態(tài)生成的頁(yè)面的測(cè)試會(huì)出現(xiàn)一些錯(cuò)誤,大家使用的時(shí)候注意一些。
2、表單測(cè)試
當(dāng)用戶給Web應(yīng)用系統(tǒng)管理員提交信息時(shí),就會(huì)需要使用表單操作,例如用戶注冊(cè)、登陸、信息提交等。在這種情況下,我們必須測(cè)試提交操作的完整性,以校驗(yàn)提交給服務(wù)器的信息的正確性。
要測(cè)試這些程序,需要驗(yàn)證服務(wù)器能正確保存這些數(shù)據(jù),而且后臺(tái)運(yùn)行的程序能正確解釋和使用這些信息。
B/S結(jié)構(gòu)實(shí)現(xiàn)的功能可能主要的就在這里,提交數(shù)據(jù),處理數(shù)據(jù)等如果有固定的操作流程可以考慮自動(dòng)化測(cè)試工具的錄制功能,編寫(xiě)可重復(fù)使用的腳本代碼,可以在測(cè)試、回歸測(cè)試時(shí)運(yùn)行,以便減輕測(cè)試人員工作量。
我們對(duì)UM子系統(tǒng)中各個(gè)功能模塊中的各項(xiàng)功能進(jìn)行逐一的測(cè)試,主要測(cè)試方法為:邊界值測(cè)試、等價(jià)類(lèi)測(cè)試,以及異常類(lèi)測(cè)試。測(cè)試中要保證每種類(lèi)型都有2個(gè)以上的典型數(shù)值的輸入,以確保測(cè)試輸入的全面性。
3、Cookies測(cè)試
Cookies通常用來(lái)存儲(chǔ)用戶信息和用戶在某應(yīng)用系統(tǒng)的操作,當(dāng)一個(gè)用戶使用Cookies訪問(wèn)了某一個(gè)應(yīng)用系統(tǒng)時(shí),Web服務(wù)器將發(fā)送關(guān)于用戶的信息,把該信息以Cookies的形式存儲(chǔ)在客戶端計(jì)算機(jī)上,這可用來(lái)創(chuàng)建動(dòng)態(tài)和自定義頁(yè)面或者存儲(chǔ)登陸等信息。
如果Web應(yīng)用系統(tǒng)使用了Cookies,就必須檢查Cookies是否能正常工作而且對(duì)這些信息已經(jīng)加密。測(cè)試的內(nèi)容可包括Cookies是否起作用,是否按預(yù)定的時(shí)間進(jìn)行保存,刷新對(duì)Cookies有什么影響等。
4、設(shè)計(jì)語(yǔ)言測(cè)試
Web設(shè)計(jì)語(yǔ)言版本的差異可以引起客戶端或服務(wù)器端嚴(yán)重的問(wèn)題,例如使用哪種版本的HTML等。當(dāng)在分布式環(huán)境中開(kāi)發(fā)時(shí),開(kāi)發(fā)人員都不在一起,這個(gè)問(wèn)題就顯得尤為重要。除了HTML的版本問(wèn)題外,不同的腳本語(yǔ)言,例如Java、Javascrīpt、 ActiveX、VBscrīpt或Perl等也要進(jìn)行驗(yàn)證。
5、數(shù)據(jù)庫(kù)測(cè)試
在Web應(yīng)用技術(shù)中,數(shù)據(jù)庫(kù)起著重要的作用,數(shù)據(jù)庫(kù)為Web應(yīng)用系統(tǒng)的管理、運(yùn)行、查詢和實(shí)現(xiàn)用戶對(duì)數(shù)據(jù)存儲(chǔ)的請(qǐng)求等提供空間。在Web應(yīng)用中,最常用的數(shù)據(jù)庫(kù)類(lèi)型是關(guān)系型數(shù)據(jù)庫(kù),可以使用SQL對(duì)信息進(jìn)行處理。
在使用了數(shù)據(jù)庫(kù)的Web應(yīng)用系統(tǒng)中,一般情況下,可能發(fā)生兩種錯(cuò)誤,分別是數(shù)據(jù)一致性錯(cuò)誤和輸出錯(cuò)誤。數(shù)據(jù)一致性錯(cuò)誤主要是由于用戶提交的表單信息不正確而造成的,而輸出錯(cuò)誤主要是由于網(wǎng)絡(luò)速度或程序設(shè)計(jì)問(wèn)題等引起的,針對(duì)這兩種情況,可分別進(jìn)行測(cè)試。
二、性能測(cè)試
網(wǎng)站的性能測(cè)試對(duì)于網(wǎng)站的運(yùn)行而言非常重要,但是目前對(duì)于網(wǎng)站的性能測(cè)試做的不夠,我們?cè)谶M(jìn)行系統(tǒng)設(shè)計(jì)時(shí)也沒(méi)有一個(gè)很好的基準(zhǔn)可以參考,因而建立網(wǎng)站的性能測(cè)試的一整套的測(cè)試方案將是至關(guān)重要的。
網(wǎng)站的性能測(cè)試主要從三個(gè)方面進(jìn)行:連接速度測(cè)試、負(fù)荷測(cè)試(Load)和壓力測(cè)試(Stress),
連接速度測(cè)試指的是打開(kāi)網(wǎng)頁(yè)的響應(yīng)速度測(cè)試。負(fù)荷測(cè)試指的是進(jìn)行一些邊界數(shù)據(jù)的測(cè)試,壓力測(cè)試更像是惡意測(cè)試,壓力測(cè)試傾向應(yīng)該是致使整個(gè)系統(tǒng)崩潰。
1、連接速度測(cè)試
用戶連接到Web應(yīng)用系統(tǒng)的速度根據(jù)上網(wǎng)方式的變化而變化,他們或許是電話撥號(hào),或是寬帶上網(wǎng)。當(dāng)下載一個(gè)程序時(shí),用戶可以等較長(zhǎng)的時(shí)間,但如果僅僅訪問(wèn)一個(gè)頁(yè)面就不會(huì)這樣。如果Web系統(tǒng)響應(yīng)時(shí)間太長(zhǎng)(例如超過(guò)5秒鐘),用戶就會(huì)因沒(méi)有耐心等待而離開(kāi)。
另外,有些頁(yè)面有超時(shí)的限制,如果響應(yīng)速度太慢,用戶可能還沒(méi)來(lái)得及瀏覽內(nèi)容,就需要重新登陸了。而且,連接速度太慢,還可能引起數(shù)據(jù)丟失,使用戶得不到真實(shí)的頁(yè)面。
2、負(fù)載測(cè)試
負(fù)載測(cè)試是為了測(cè)量Web系統(tǒng)在某一負(fù)載級(jí)別上的性能,以保證Web系統(tǒng)在需求范圍內(nèi)能正常工作。負(fù)載級(jí)別可以是某個(gè)時(shí)刻同時(shí)訪問(wèn)Web系統(tǒng)的用戶數(shù)量,也可以是在線數(shù)據(jù)處理的數(shù)量。例如:Web應(yīng)用系統(tǒng)能允許多少個(gè)用戶同時(shí)在線?如果超過(guò)了這個(gè)數(shù)量,會(huì)出現(xiàn)什么現(xiàn)象?Web應(yīng)用系統(tǒng)能否處理大量用戶對(duì)同一個(gè)頁(yè)面的請(qǐng)求?
3、壓力測(cè)試
負(fù)載測(cè)試應(yīng)該安排在Web系統(tǒng)發(fā)布以后,在實(shí)際的網(wǎng)絡(luò)環(huán)境中進(jìn)行測(cè)試。因?yàn)橐粋€(gè)企業(yè)內(nèi)部員工,特別是項(xiàng)目組人員總是有限的,而一個(gè)Web系統(tǒng)能同時(shí)處理的請(qǐng)求數(shù)量將遠(yuǎn)遠(yuǎn)超出這個(gè)限度,所以,只有放在Internet上,接受負(fù)載測(cè)試,其結(jié)果才是正確可信的。
進(jìn)行壓力測(cè)試是指實(shí)際破壞一個(gè)Web應(yīng)用系統(tǒng),測(cè)試系統(tǒng)的反映。壓力測(cè)試是測(cè)試系統(tǒng)的限制和故障恢復(fù)能力,也就是測(cè)試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)。
壓力測(cè)試的區(qū)域包括表單、登陸和其他信息傳輸頁(yè)面等。
采用的測(cè)試工具:
性能測(cè)試可以采用相應(yīng)的工具進(jìn)行自動(dòng)化測(cè)試,我們目前采用如下工具
ab -----Apache 的測(cè)試工具
OpenSTA—開(kāi)發(fā)系統(tǒng)測(cè)試架構(gòu)
三、接口測(cè)試
在很多情況下,web 站點(diǎn)不是孤立。Web 站點(diǎn)可能會(huì)與外部服務(wù)器通訊,請(qǐng)求數(shù)據(jù)、驗(yàn)證數(shù)據(jù)或提交訂單。
1、 服務(wù)器接口
第一個(gè)需要測(cè)試的接口是瀏覽器與服務(wù)器的接口。測(cè)試人員提交事務(wù),然后查看服務(wù)器記錄,并驗(yàn)證在瀏覽器上看到的正好是服務(wù)器上發(fā)生的。測(cè)試人員還可以查詢數(shù)據(jù)庫(kù),確認(rèn)事務(wù)數(shù)據(jù)已正確保存。
2、 外部接口
有些 web 系統(tǒng)有外部接口。例如,網(wǎng)上商店可能要實(shí)時(shí)驗(yàn)證信用卡數(shù)據(jù)以減少欺詐行為的發(fā)生。測(cè)試的時(shí)候,要使用 web 接口發(fā)送一些事務(wù)數(shù)據(jù),分別對(duì)有效信用卡、無(wú)效信用卡和被盜信用卡進(jìn)行驗(yàn)證。如果商店只使用 Visa 卡和 Mastercard 卡, 可以嘗試使用 Discover 卡的數(shù)據(jù)。(簡(jiǎn)單的客戶端腳本能夠在提交事務(wù)之前對(duì)代碼進(jìn)行識(shí)別,例如 3 表示 American Express,4 表示 Visa,5 表示 Mastercard,6 代表Discover。)通常,測(cè)試人員需要確認(rèn)軟件能夠處理外部服務(wù)器返回的所有可能的消息。
3、錯(cuò)誤處理
最容易被測(cè)試人員忽略的地方是接口錯(cuò)誤處理。通常我們?cè)噲D確認(rèn)系統(tǒng)能夠處理所有錯(cuò)誤,但卻無(wú)法預(yù)期系統(tǒng)所有可能的錯(cuò)誤。嘗試在處理過(guò)程中中斷事務(wù),看看會(huì)發(fā)生什么情況?訂單是否完成?嘗試中斷用戶到服務(wù)器的網(wǎng)絡(luò)連接。嘗試中斷 web 服務(wù)器到信用卡驗(yàn)證服務(wù)器的連接。在這些情況下,系統(tǒng)能否正確處理這些錯(cuò)誤?是否已對(duì)信用卡進(jìn)行收費(fèi)?如果用戶自己中斷事務(wù)處理,在訂單已保存而用戶沒(méi)有返回網(wǎng)站確認(rèn)的時(shí)候,需要由客戶代表致電用戶進(jìn)行訂單確認(rèn)。
四、可用性測(cè)試
可用性/易用性方面目前我們只能采用手工測(cè)試的方法進(jìn)行評(píng)判,而且缺乏一個(gè)很好的評(píng)判基準(zhǔn)進(jìn)行,此一方面需要大家共同討論。
1、導(dǎo)航測(cè)試
導(dǎo)航描述了用戶在一個(gè)頁(yè)面內(nèi)操作的方式,在不同的用戶接口控制之間,例如按鈕、對(duì)話框、列表和窗口等;或在不同的連接頁(yè)面之間。通過(guò)考慮下列問(wèn)題,可以決定一個(gè)Web應(yīng)用系統(tǒng)是否易于導(dǎo)航:導(dǎo)航是否直觀?Web系統(tǒng)的主要部分是否可通過(guò)主頁(yè)存取?Web系統(tǒng)是否需要站點(diǎn)地圖、搜索引擎或其他的導(dǎo)航幫助?
在一個(gè)頁(yè)面上放太多的信息往往起到與預(yù)期相反的效果。Web應(yīng)用系統(tǒng)的用戶趨向于目的驅(qū)動(dòng),很快地掃描一個(gè)Web應(yīng)用系統(tǒng),看是否有滿足自己需要的信息,如果沒(méi)有,就會(huì)很快地離開(kāi)。很少有用戶愿意花時(shí)間去熟悉Web應(yīng)用系統(tǒng)的結(jié)構(gòu),因此,Web應(yīng)用系統(tǒng)導(dǎo)航幫助要盡可能地準(zhǔn)確。
導(dǎo)航的另一個(gè)重要方面是Web應(yīng)用系統(tǒng)的頁(yè)面結(jié)構(gòu)、導(dǎo)航、菜單、連接的風(fēng)格是否一致。確保用戶憑直覺(jué)就知道Web應(yīng)用系統(tǒng)里面是否還有內(nèi)容,內(nèi)容在什么地方。
Web應(yīng)用系統(tǒng)的層次一旦決定,就要著手測(cè)試用戶導(dǎo)航功能,讓最終用戶參與這種測(cè)試,效果將更加明顯。
2、圖形測(cè)試
在Web應(yīng)用系統(tǒng)中,適當(dāng)?shù)膱D片和動(dòng)畫(huà)既能起到廣告宣傳的作用,又能起到美化頁(yè)面的功能。一個(gè)Web應(yīng)用系統(tǒng)的圖形可以包括圖片、動(dòng)畫(huà)、邊框、顏色、字體、背景、按鈕等。圖形測(cè)試的內(nèi)容有:
(1)要確保圖形有明確的用途,圖片或動(dòng)畫(huà)不要胡亂地堆在一起,以免浪費(fèi)傳輸時(shí)間。Web應(yīng)用系統(tǒng)的圖片尺寸要盡量地小,并且要能清楚地說(shuō)明某件事情,一般都鏈接到某個(gè)具體的頁(yè)面。
(2)驗(yàn)證所有頁(yè)面字體的風(fēng)格是否一致。
(3)背景顏色應(yīng)該與字體顏色和前景顏色相搭配。
(4)圖片的大小和質(zhì)量也是一個(gè)很重要的因素,一般采用JPG或GIF壓縮。
3、內(nèi)容測(cè)試
內(nèi)容測(cè)試用來(lái)檢驗(yàn)Web應(yīng)用系統(tǒng)提供信息的正確性、準(zhǔn)確性和相關(guān)性。信息的正確性是指信息是可靠的還是誤傳的。
4、整體界面測(cè)試
整體界面是指整個(gè)Web應(yīng)用系統(tǒng)的頁(yè)面結(jié)構(gòu)設(shè)計(jì),是給用戶的一個(gè)整體感。例如:當(dāng)用戶瀏覽Web應(yīng)用系統(tǒng)時(shí)是否感到舒適,是否憑直覺(jué)就知道要找的信息在什么地方?整個(gè)Web應(yīng)用系統(tǒng)的設(shè)計(jì)風(fēng)格是否一致?對(duì)整體界面的測(cè)試過(guò)程,其實(shí)是一個(gè)對(duì)最終用戶進(jìn)行調(diào)查的過(guò)程。一般Web應(yīng)用系統(tǒng)采取在主頁(yè)上做一個(gè)調(diào)查問(wèn)卷的形式,來(lái)得到最終用戶的反饋信息。
對(duì)所有的可用性測(cè)試來(lái)說(shuō),都需要有外部人員(與Web應(yīng)用系統(tǒng)開(kāi)發(fā)沒(méi)有聯(lián)系或聯(lián)系很少的人員)的參與,最好是最終用戶的參與。
五、兼容性測(cè)試
需要驗(yàn)證應(yīng)用程序可以在用戶使用的機(jī)器上運(yùn)行。如果您用戶是全球范圍的,需要測(cè)試各種操作系統(tǒng)、瀏覽器、視頻設(shè)置和 modem 速度。最后,還要嘗試各種設(shè)置的組合。
1、平臺(tái)測(cè)試
市場(chǎng)上有很多不同的操作系統(tǒng)類(lèi)型,最常見(jiàn)的有Windows、Unix、Macintosh、Linux等。Web應(yīng)用系統(tǒng)的最終用戶究竟使用哪一種操作系統(tǒng),取決于用戶系統(tǒng)的配置。這樣,就可能會(huì)發(fā)生兼容性問(wèn)題,同一個(gè)應(yīng)用可能在某些操作系統(tǒng)下能正常運(yùn)行,但在另外的操作系統(tǒng)下可能會(huì)運(yùn)行失敗。因此,在Web系統(tǒng)發(fā)布之前,需要在各種操作系統(tǒng)下對(duì)Web系統(tǒng)進(jìn)行兼容性測(cè)試。
2、瀏覽器測(cè)試
瀏覽器是Web客戶端最核心的構(gòu)件,來(lái)自不同廠商的瀏覽器對(duì)Java,、Javascript、 ActiveX、 plug-ins或不同的HTML規(guī)格有不同的支持。測(cè)試瀏覽器兼容性的一個(gè)方法是創(chuàng)建一個(gè)兼容性矩陣。在這個(gè)矩陣中,測(cè)試不同廠商、不同版本的瀏覽器對(duì)某些構(gòu)件和設(shè)置的適應(yīng)性。
采用測(cè)試工具:
通過(guò)白盒測(cè)試或者黑盒測(cè)試導(dǎo)出的測(cè)試用例,采用相應(yīng)的工具進(jìn)行測(cè)試,可以采用OpenSTA進(jìn)行測(cè)試,此測(cè)試工具可以采用不同的瀏覽器進(jìn)行測(cè)試。
3.視頻測(cè)試
頁(yè)面版式在 640x400、600x800 或 1024x768 的分辨率模式下是否顯示正常? 字體是否太小以至于無(wú)法瀏覽? 或者是太大? 文本和圖片是否對(duì)齊?
4.Modem/連接速率測(cè)試
是否有這種情況,用戶使用 28.8 modem下載一個(gè)頁(yè)面需要 10 分鐘,但測(cè)試人員在測(cè)試的時(shí)候使用的是 T1 專線? 用戶在下載文章或演示的時(shí)候,可能會(huì)等待比較長(zhǎng)的時(shí)間,但卻不會(huì)耐心等待首頁(yè)的出現(xiàn)。最后,需要確認(rèn)圖片不會(huì)太大。
5、打印機(jī)測(cè)試
用戶可能會(huì)將網(wǎng)頁(yè)打印下來(lái)。因此網(wǎng)頁(yè)在設(shè)計(jì)的時(shí)候要考慮到打印問(wèn)題,注意節(jié)約紙張和油墨。有不少用戶喜歡閱讀而不是盯著屏幕,因此需要驗(yàn)證網(wǎng)頁(yè)打印是否正常。有時(shí)在屏幕上顯示的圖片和文本的對(duì)齊方式可能與打印出來(lái)的東西不一樣。測(cè)試人員至少需要驗(yàn)證訂單確認(rèn)頁(yè)面打印是正常的。
6、組合測(cè)試
最后需要進(jìn)行組合測(cè)試。600x800 的分辨率在 MAC 機(jī)上可能不錯(cuò),但是在 IBM 兼容機(jī)上卻很難看。在 IBM 機(jī)器上使用 Netscape 能正常顯示,但卻無(wú)法使用 Lynx 來(lái)瀏覽。
如果是內(nèi)部使用的 web 站點(diǎn),測(cè)試可能會(huì)輕松一些。如果公司指定使用某個(gè)類(lèi)型的瀏覽器,那么只需在該瀏覽器上進(jìn)行測(cè)試。如果所有的人都使用 T1 專線,可能不需要測(cè)試下載施加。(但需要注意的是,可能會(huì)有員工從家里撥號(hào)進(jìn)入系統(tǒng)) 有些內(nèi)部應(yīng)用程序,開(kāi)發(fā)部門(mén)可能在系統(tǒng)需求中聲明不支持某些系統(tǒng)而只支持一些那些已設(shè)置的系統(tǒng)。但是,理想的情況是,系統(tǒng)能在所有機(jī)器上運(yùn)行,這樣就不會(huì)限制將來(lái)的發(fā)展和變動(dòng)。
六、安全測(cè)試
Web應(yīng)用系統(tǒng)的安全性測(cè)試區(qū)域主要有:
1、 目錄設(shè)置
Web 安全的第一步就是正確設(shè)置目錄。每個(gè)目錄下應(yīng)該有 index.html 或 main.html 頁(yè)面,這樣就不會(huì)顯示該目錄下的所有內(nèi)容。如果沒(méi)有執(zhí)行這條規(guī)則。那么選中一幅圖片,單擊鼠標(biāo)右鍵,找到該圖片所在的路徑"…com/objects/images"。然后在瀏覽器地址欄中手工輸入該路徑,發(fā)現(xiàn)該站點(diǎn)所有圖片的列表。這可能沒(méi)什么關(guān)系。但是進(jìn)入下一級(jí)目錄 "…com/objects" ,點(diǎn)擊 jackpot。 在該目錄下有很多資料,其中有些都是已過(guò)期頁(yè)面。如果該公司每個(gè)月都要更改產(chǎn)品價(jià)格信息,并且保存過(guò)期頁(yè)面。那么只要翻看了一下這些記錄,就可以估計(jì)他們 的邊際利潤(rùn)以及他們?yōu)榱藸?zhēng)取一個(gè)合同還有多大的降價(jià)空間。如果某個(gè)客戶在談判之前查看了這些信息,他們?cè)谡勁凶郎峡隙ㄌ幱谏巷L(fēng)。
2.登錄
現(xiàn)在的Web應(yīng)用系統(tǒng)基本采用先注冊(cè),后登陸的方式。因此,必須測(cè)試有效和無(wú)效的用戶名和密碼,要注意到是否大小寫(xiě)敏感,可以試多少次的限制,是否可以不登陸而直接瀏覽某個(gè)頁(yè)面等。
3.Session
Web應(yīng)用系統(tǒng)是否有超時(shí)的限制,也就是說(shuō),用戶登陸后在一定時(shí)間內(nèi)(例如15分鐘)沒(méi)有點(diǎn)擊任何頁(yè)面,是否需要重新登陸才能正常使用。
4.日志文件
為了保證Web應(yīng)用系統(tǒng)的安全性,日志文件是至關(guān)重要的。需要測(cè)試相關(guān)信息是否寫(xiě)進(jìn)了日志文件、是否可追蹤。
5.加密
當(dāng)使用了安全套接字時(shí),還要測(cè)試加密是否正確,檢查信息的完整性。
6.安全漏洞
服務(wù)器端的腳本常常構(gòu)成安全漏洞,這些漏洞又常常被黑客利用。所以,還要測(cè)試沒(méi)有經(jīng)過(guò)授權(quán),就不能在服務(wù)器端放置和編輯腳本的問(wèn)題。
目前網(wǎng)絡(luò)安全問(wèn)題日益重要,特別對(duì)于有交互信息的網(wǎng)站及進(jìn)行電子商務(wù)活動(dòng)的網(wǎng)站尤其重要。目前我們的測(cè)試沒(méi)有涵蓋網(wǎng)站的安全性的測(cè)試,我們擬定采用工具來(lái)測(cè)定。
工具如下
SAINT------- Security Administrator’s Integrated Network Tool
此工具能夠測(cè)出網(wǎng)站系統(tǒng)的相應(yīng)的安全問(wèn)題,并且能夠給出安全漏洞的解決方案,不過(guò)是一些較為常見(jiàn)的漏洞解決方案。
七、代碼合法性測(cè)試
代碼合法性測(cè)試主要包括2個(gè)部分:程序代碼合法性檢查與顯示代碼合法性檢查。
1、程序代碼合法性檢查
程序代碼合法性檢查主要標(biāo)準(zhǔn)為《intergrp小組編程規(guī)范》,目前采用由SCM管理員進(jìn)行規(guī)范的檢查,未來(lái)期望能夠有相應(yīng)的工具進(jìn)行測(cè)試。
2、顯示代碼合法性檢查
顯示代碼的合法性檢查,主要分為Html、Javascrīpt、Css代碼檢查,目前采用HTML代碼檢查------采用CSE HTML Validator進(jìn)行測(cè)試Javascrīpt、Css也可以在網(wǎng)上下載相應(yīng)的測(cè)試工具。
八、 文檔測(cè)試
l、產(chǎn)品說(shuō)明書(shū)屬性檢查清單
1)完整.是否有遺漏和丟失,完全嗎? 單獨(dú)使用是否包含全部?jī)?nèi)容
2)準(zhǔn)確.既定解決方案正確嗎? 目標(biāo)明確嗎? 有沒(méi)有錯(cuò)誤?
3)精確、不含糊、清晰.描述是否一清二楚? 還是自說(shuō)自話?容易看懂和理解嗎?
4)一致.產(chǎn)品功能能描述是否自相矛盾,與其他功能有沒(méi)有沖突
5)貼切.描述功能的陳述是否必要?有沒(méi)有多余信息? 功能是否原來(lái)的客戶要求?
6)合理.在特定的預(yù)算和進(jìn)度下,以現(xiàn)有人力,物力和資源能否實(shí)現(xiàn)?
7)代碼無(wú)關(guān).是否堅(jiān)持定義產(chǎn)品,而不是定義其所信賴的軟件設(shè)計(jì),架構(gòu)和代碼
8)可測(cè)試性.特性能否測(cè)試? 測(cè)試員建立驗(yàn)證操作的測(cè)試程序是否提供足夠的信息?
2、 產(chǎn)品說(shuō)明書(shū)用語(yǔ)檢查清單
1)說(shuō)明。 對(duì)問(wèn)題的描述通常表現(xiàn)為粉飾沒(méi)有仔細(xì)考慮的功能----可歸結(jié)于前文所述的屬性.從產(chǎn)品說(shuō)明書(shū)上找出這樣的用語(yǔ),仔細(xì)審視它們?cè)谖闹惺窃鯓邮褂玫?產(chǎn)品說(shuō)明書(shū)可能會(huì)為其掩飾和開(kāi)脫,也可能含糊其詞----無(wú)論是哪一種情況都可視為軟件缺陷.
2)總是,每一種,所有,沒(méi)有,從不.如果看到此類(lèi)絕對(duì)或肯定的,切實(shí)認(rèn)定的敘述,軟件測(cè)試員就可以著手設(shè)計(jì)針?shù)h相對(duì)的案例.
3)當(dāng)然,因此,明顯,顯然,必然.這些話意圖誘使接受假定情況.不要中了圈套.
4)某些,有時(shí),常常,通常,慣常,經(jīng)常,大多,幾乎.這些話太過(guò)模糊."有時(shí)"發(fā)生作用的功能無(wú)法測(cè)試.
5)等等,諸如此類(lèi),依此類(lèi)推.以這樣的詞結(jié)束的功能清單無(wú)法測(cè)試.功能清單要絕對(duì)或者解釋明確,以免讓人迷惑,不知如何推論.
6)良好,迅速,廉價(jià),高效,小,穩(wěn)定.這些是不確定的說(shuō)法,不可測(cè)試.如果在產(chǎn)品說(shuō)明書(shū)中出現(xiàn),就必須進(jìn)一步指明含義.
7)已處理,已拒絕,已忽略,已消除.這些廉潔可能會(huì)隱藏大量需要說(shuō)明的功能.
8)如果...那么...(沒(méi)有否則).找出有"如果...那么..."而缺少配套的"否則"結(jié)構(gòu)的陳述.想一想"如果"沒(méi)有發(fā)生會(huì)怎樣.
相關(guān)的測(cè)試工具
OpenSTA
主要做性能測(cè)試的負(fù)荷及壓力測(cè)試,使用比較方便,可以編寫(xiě)測(cè)試腳本,也可以先行自動(dòng)生成測(cè)試腳本,而后對(duì)于應(yīng)用測(cè)試腳本進(jìn)行測(cè)試。
SAINT
網(wǎng)站安全性測(cè)試,能夠?qū)τ谥付ňW(wǎng)站進(jìn)行安全性測(cè)試,并可以提供安全問(wèn)題的解決方案。
CSE HTML Validator
一個(gè)有用的對(duì)于HTML代碼進(jìn)行合法性檢查的工具
Ab(Apache Bench)
Apache自帶的對(duì)于性能測(cè)試方面的工具,功能不是很多,但是非常實(shí)用。
Crash-me
Mysql自帶的測(cè)試數(shù)據(jù)庫(kù)性能的工具,能夠測(cè)試多種數(shù)據(jù)庫(kù)的性能。
更多資訊,點(diǎn)擊《網(wǎng)站建設(shè)方案》,了解更多。