軟件Web 測試的經(jīng)驗小談 軟件測試
1. 功能測試
1.1.鏈接測試
鏈接是 Web 應用系統的一個(gè)主要特征,它是在頁(yè)面之間切換和指導用戶(hù)去一些不知道地址的頁(yè)面的主要手段。鏈接測試可分為三個(gè)方面。首先,測試所有鏈接是否按指示的那樣確實(shí)鏈接到了該鏈接的頁(yè)面;其次,測試所鏈接的頁(yè)面是否存在;最后,保證 Web 應用系統上沒(méi)有孤立的頁(yè)面,所謂孤立頁(yè)面是指沒(méi)有鏈接指向該頁(yè)面,只有知道正確的 URL 地址才能訪(fǎng)問(wèn)。
鏈接測試可以自動(dòng)進(jìn)行,現在已經(jīng)有許多工具可以采用。鏈接測試必須在集成測試階段完成,也就是說(shuō),在整個(gè) Web 應用系統的所有頁(yè)面開(kāi)發(fā)完成之后進(jìn)行鏈接測試。
1.2. 表單測試
當用戶(hù)給 Web 應用系統管理員提交信息時(shí),就需要使用表單操作,例如用戶(hù)注冊、登陸、信息提交等。在這種情況下,我們必須測試提交操作的完整性,以校驗提交給服務(wù)器的信息的正確性。例如:用戶(hù)填寫(xiě)的出生日期與職業(yè)是否恰當,填寫(xiě)的所屬省份與所在城市是否匹配等。如果使用了默認值,還要檢驗默認值的正確性。如果表單只能接受指定的某些值,則也要進(jìn)行測試。例如:只能接受某些字符,測試時(shí)可以跳過(guò)這些字符,看系統是否會(huì )報錯。
1.3.Cookies測試
Cookies 通常用來(lái)存儲用戶(hù)信息和用戶(hù)在某應用系統的操作,當一個(gè)用戶(hù)使用 Cookies 訪(fǎng)問(wèn)了某一個(gè)應用系統時(shí), Web 服務(wù)器將發(fā)送關(guān)于用戶(hù)的信息,把該信息以 Cookies 的形式存儲在客戶(hù)端計算機上,這可用來(lái)創(chuàng )建動(dòng)態(tài)和自定義頁(yè)面或者存儲登陸等信息。
如果 Web 應用系統使用了 Cookies ,就必須檢查 Cookies 是否能正常工作。測試的內容可包括 Cookies 是否起作用,是否按預定的時(shí)間進(jìn)行保存,刷新對 Cookies 有什么影響等。
1.4.設計語(yǔ)言測試
Web 設計語(yǔ)言版本的差異可以引起客戶(hù)端或服務(wù)器端嚴重的問(wèn)題,例如使用哪種版本的 HTML 等。當在分布式環(huán)境中開(kāi)發(fā)時(shí),開(kāi)發(fā)人員都不在一起,這個(gè)問(wèn)題就顯得尤為重要。除了 HTML 的版本問(wèn)題外,不同的腳本語(yǔ)言,例如 Java 、 JavaScript 、 ActiveX 、 VBScript 或 Perl 等也要進(jìn)行驗證。
1.5.數據庫測試
在 Web 應用技術(shù)中,數據庫起著(zhù)重要的作用,數據庫為 Web 應用系統的管理、運行、查詢(xún)和實(shí)現用戶(hù)對數據存儲的請求等提供空間。在 Web 應用中,最常用的數據庫類(lèi)型是關(guān)系型數據庫,可以使用 SQL 對信息進(jìn)行處理。
在使用了數據庫的 Web 應用系統中,一般情況下,可能發(fā)生兩種錯誤,分別是數據一致性錯誤和輸出錯誤。數據一致性錯誤主要是由于用戶(hù)提交的表單信息不正確而造成的,而輸出錯誤主要是由于網(wǎng)絡(luò )速度或程序設計問(wèn)題等引起的,針對這兩種情況,可分別進(jìn)行測試。
2. 性能測試
2.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.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è)面的請求?
2.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è)面等。
3. 可用性測試
3.1.導航測試
導航描述了用戶(hù)在一個(gè)頁(yè)面內操作的方式,在不同的用戶(hù)接口控制之間,例如按鈕、對話(huà)框、列表和窗口等;或在不同的連接頁(yè)面之間。通過(guò)考慮下列問(wèn)題,可以決定一個(gè) Web 應用系統是否易于導航:導航是否直觀(guān)? Web 系統的主要部分是否可通過(guò)主頁(yè)存取? Web 系統是否需要站點(diǎn)地圖、搜索引擎或其他的導航幫助?
在一個(gè)頁(yè)面上放太多的信息往往起到與預期相反的效果。 Web 應用系統的用戶(hù)趨向于目的驅動(dòng),很快地掃描一個(gè) Web 應用系統,看是否有滿(mǎn)足自己需要的信息,如果沒(méi)有,就會(huì )很快地離開(kāi)。很少有用戶(hù)愿意花時(shí)間去熟悉 Web 應用系統的結構,因此, Web 應用系統導航幫助要盡可能地準確。
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/