在Web工程過程中,基于Web系統的測試、确認和驗收是一項重要而富有挑戰性的工作。基于Web的系統測試與傳統的軟體測試不同,它不但需要檢查和驗證是否按照設計的要求運作,而且還要測試系統在不同使用者的浏覽器端的顯示是否合适。重要的是,還要從最終使用者的角度進行安全性和可用性測試。然而,Internet和Web媒體的不可預見性使測試基于Web的系統變得困難。是以,我們必須為測試和評估複雜的基于Web的系統研究新的方法和技術。
本文将 web 測試分為 6 個部分:
1. 功能測試
2. 性能測試 (包括負載/壓力測試)
3. 使用者界面測試
4. 相容性測試
5. 安全測試
6. 接口測試
本系列文章的目的是覆寫 web 測試的各個方面,未就某一主題進行深入說明。
1 功能測試
1.1 連結測試
連結是Web應用系統的一個主要特征,它是在頁面之間切換和指導使用者去一些不知道位址的頁面的主要手段。連結測試可分為三個方面。首先,測試所有連結是否按訓示的那樣确實連結到了該連結的頁面;其次,測試所連結的頁面是否存在;最後,保證Web應用系統上沒有孤立的頁面,所謂孤立頁面是指沒有連結指向該頁面,隻有知道正确的URL位址才能通路。
連結測試可以自動進行,現在已經有許多工具可以采用。連結測試必須在內建測試階段完成,也就是說,在整個Web應用系統的所有頁面開發完成之後進行連結測試。
采取措施:采用自動檢測網站連結的軟體來進行。
推薦軟體:
Xenu Link Sleuth 免費 綠色免安裝軟體
HTML Link Validator 共享(30天試用)
1.2 表單測試
當使用者通過表單送出資訊的時候,都希望表單能正常工作。
如 果使用表單來進行線上注冊,要確定送出按鈕能正常工作,當注冊完成後應傳回注冊成功的消息。如果使用表單收集配送資訊,應確定程式能夠正确處理這些資料, 最後能讓顧客能讓客戶收到包裹。要測試這些程式,需要驗證伺服器能正确儲存這些資料,而且背景運作的程式能正确解釋和使用這些資訊。
當 使用者使用表單進行使用者注冊、登陸、資訊送出等操作時,我們必須測試送出操作的完整性,以校驗送出給伺服器的資訊的正确性。例如:使用者填寫的出生日期與職業 是否恰當,填寫的所屬省份與所在城市是否比對等。如果使用了預設值,還要檢驗預設值的正确性。如果表單隻能接受指定的某些值,則也要進行測試。例如:隻能 接受某些字元,測試時可以跳過這些字元,看系統是否會報錯。
1.3 資料校驗
如果系根據業務規則需要對使用者輸入進行校驗,需要保證這些校驗功能正常工作。例如,省份的字段可以用一個有效清單進行校驗。在這種情況下,需要驗證清單完整而且程式正确調用了該清單(例如在清單中添加一個測試值,确定系統能夠接受這個測試值)。
在測試表單時,該項測試和表單測試可能會有一些重複。
1.2和1.3的采取措施:第一個完整的版本采用手動檢查,同時形成WinRunner(QTP)腳本;回歸測試以及更新版本主要靠WinRunner(QTP)自動回放測試。
1.4 cookies測試
Cookies通常用來存儲使用者資訊和使用者在某應用系統的操作,當一個使用者使用Cookies通路了某一個應用系統時,Web伺服器将發送關于使用者的資訊,把該資訊以Cookies的形式存儲在用戶端計算機上,這可用來建立動态和自定義頁面或者存儲登陸等資訊。
如果Web應用系統使用了Cookies,就必須檢查Cookies是否能正常工作。測試的内容可包括Cookies是否起作用,是否按預定的時間進行儲存,重新整理對Cookies有什麼影響等。如果在 cookies 中儲存了注冊資訊,請确認該 cookie能夠正常工作而且已對這些資訊已經加密。如果使用 cookie 來統計次數,需要驗證次數累計正确。
采取措施:
1 采用黑盒測試:采用上面提到的方法進行測試
2 采用檢視cookies的軟體進行(初步的想法)
可以選擇采用的軟體
IECookiesView v1.50
Cookies Manager v1.1
1.5 資料庫測試
在Web應用技術中,資料庫起着重要的作用,資料庫為Web應用系統的管理、運作、查詢和實作使用者對資料存儲的請求等提供空間。在Web應用中,最常用的資料庫類型是關系型資料庫,可以使用SQL對資訊進行處理。
在使用了資料庫的Web應用系統中,一般情況下,可能發生兩種錯誤,分别是資料一緻性錯誤和輸出錯誤。資料一緻性錯誤主要是由于使用者送出的表單資訊不正确而造成的,而輸出錯誤主要是由于網絡速度或程式設計問題等引起的,針對這兩種情況,可分别進行測試。
采取措施:暫時沒有更好的測試方法
考慮結合到1.2和1.3的測試中
1.6 應用程式特定的功能需求
最重要的是,測試人員需要對應用程式特定的功能需求進行驗證。嘗試使用者可能進行的所有操作:下訂單、更改訂單、取消訂單、核對訂單狀态、在貨物發送之前更改送貨資訊、線上支付等等。這是使用者之是以使用網站的原因,一定要确認網站能像廣告宣傳的那樣神奇。
采取措施:深刻了解需求說明文檔
1.7 設計語言測試
Web設計語言版本的差異可以引起用戶端或伺服器端嚴重的問題,例如使用哪種版本的HTML等。當在分布式環境中開發時,開發人員都不在一起,這個問題就顯得尤為重要。除了HTML的版本問題外,不同的腳本語言,例如Java、JavaScript、 ActiveX、VBScript或Perl等也要進行驗證。
暫時沒有方法測試,可以多參考一點讨論組内的更新資訊