1、Web應用程序html
應用程序有兩種模式,C/S和B/S。C/S模式,即Client/Server(客戶端/服務端)模式,這類程序可獨立運行。B/S模式,即Browser/Server(瀏覽器/服務端)模式,這類程序需藉助瀏覽器來運行。linux
Web應用程序通常是B/S模式,一個Web應用程序是由完成特定任務的各類Web組件(web components)構成的並經過Web將服務展現給外界。在實際應用中,Web應用程序是由多個Servlet、JSP頁面、HTML文件以及圖像文件等組成。web
瞭解了Web應用程序,該如何進行測試呢?數據庫
2、功能測試windows
功能測試,是對產品的各功能進行驗證。測試要點有:瀏覽器
連接測試安全
(1)全部的連接是否按指示連接到該連接的頁面服務器
(2)所連接的頁面是否存在網絡
(3)保證沒有孤立頁面併發
表單測試
(1)驗證服務器能正確保存這些數據
(2)後臺運行的程序能正確解釋和使用這些信息
Cookies測試
(1)Cookies是否起做用
(2)Cookies是否按預約的時間進行保存
(3)刷新對Cookies有什麼影響
設計語言測試
(1)不一樣版本的設計語言會引發客戶端、服務端嚴重的問題
數據庫測試
(1)數據一致性錯誤:提交表單信息不正確
(2)輸出錯誤
相關功能性測試
(1)刪除/增長某一項:是否對其餘項形成影響,這些影響是否都正確
(2)列表默認值檢查
(3)檢查按鈕功能是否正確:新建、編輯、刪除、關閉、返回、保存、導入、上一頁、下一頁、頁面跳轉、重置(常見錯誤)
(4)字符串長度檢查:超出長度
(5)字符類型檢查
(6)標點符號檢查:空格、各類引號、Enter鍵
(7)特殊字符:常見%、「、」
(8)中文字符:是否亂碼
(9)檢查信息完整:查看信息,查看所填信息是否完整更新;更新信息,更新信息與添加信息是否一致
(10)信息重複:需惟一信息處,好比重複的名字或ID、重名是否區分大小寫、加空格
(11)檢查刪除功能:不選擇任何信息,按Delete,看如何處理;選擇一個或多個進行刪除;多頁選、翻頁選刪除;刪除是否有提示
(12)檢查添加和修改是否一致:添加必填項,修改也該必填;添加爲何類型,修改也該什麼類型
(13)檢查修改重名:修改時把不能重名的項改成已存在的內容
(14)重複提交表單:一條已經成功提交的記錄,返回後再提交
(15)檢查屢次使用返回鍵:返回到原來頁面,重複屢次
(16)搜索檢查:存在或不存在內容,看搜索結果是否正確;多個搜索條件,同時輸入合理和不合理條件;特殊字符
(17)輸入信息的位置
(18)上傳下載文件檢查:功能是否實現,上傳:上傳文件是否能打開、格式要求、系統是否有解釋信息、將不能上傳的文件格式修改後綴爲可上傳的文件格式;下載:下載是否能打開、保存、格式要求
(19)必填項檢查:必填項未填寫;是否有提示,如加*;對必填項提示返回後,焦點是否自動定位到必填項
(20)快捷鍵檢查:是否支持快捷鍵Ctrl+C、Ctrl+V、backspace;對不容許作輸入的字段(如:下拉選項),對快捷方式是否也作了限制
(21)Enter鍵檢查:輸入結束後按Enter鍵,系統如何處理
(22)刷新鍵檢查:按瀏覽器刷新鍵如何處理
(23)回退鍵檢查:按瀏覽器回退鍵如何處理
(24)空格檢查:輸入項輸入一個或多個空格
(25)輸入法半角全角檢查:好比,浮點型,輸入全角小數點「。」或「. 」,如4. 5;全角空格
(26)密碼檢查:輸入加密方式的極限字符;密碼儘量長
(27)用戶檢查:不一樣種類管理員用戶的不一樣權限,是否能夠互相刪除、管理、編輯;通常用戶的權限;註銷功能,老用戶註銷再註冊,是否爲新用戶
(28)系統數據檢查:數據隨業務過程、狀態的變化保持正確,不能由於某個過程出現垃圾數據,也不能由於某個過程而丟失數據。
(29)系統可恢復性檢查:以各類方式把系統搞癱,測試系統是否能夠迅速恢復
(30)確認提示檢查:系統更新、刪除操做:是否有提示、取消操做;提示是否準確;事前、過後提示
(31)數據注入檢查:對數據庫注入,特殊字符,對SQL語句進行破壞
(32)時間日期檢查:時間、日期、時間驗證:日期範圍是否符合實際業務;對於不符合實際業務的日期是否有限制
(33)多瀏覽器驗證
3、易用性測試(界面測試)
總體界面測試
(1)給用戶的總體感:溫馨感;憑感受能找到想要找的信息;設計風格是否一致
控件測試
(2)各控件的功能
多媒體測試
(1)圖形要有明確的用途,圖片、動畫排列有序且目的明確
(2)圖片按鈕連接有效,而且連接的屬性正確(好比是新建窗口打開、當前頁面打開)
(3)背景圖片應該與字體顏色和前景顏色相搭配
(4)檢查圖片的大小和質量:通常jpg、gif、png;不影響圖片質量的狀況下能使圖片的大小減少到30kb如下
(5)gif動畫是否設置了正確的循環模式,顏色是否正常
(6)Flash、Silverlight元素是否正常
導航測試
(1)站點地圖和導航條:位置是否合理;頁面結構
內容測試
(2)提供信息的正確性、準確性、相關性
容器測試
(1)DIV
(2)表格:做爲控件,設置是否正確;長寬是否足夠。做爲較早的網頁佈局方式,考慮瀏覽器窗口尺寸的變化;內容動態增長或刪除對界面的影響
4、兼容性測試
平臺測試:windows;unix;macintosh;linux
瀏覽器測試:不一樣廠商的瀏覽器對Java、Javascript、ActiveX、plug-ins或不一樣的HTML的規格不一樣的支持;框架和層次結構在不一樣瀏覽器也不一樣的顯示
5、安全性測試
安全性測試要求:
(1)可以對密碼試探工具進行防範
(2)可以防範對Cookie攻擊的經常使用手段
(3)敏感數據保證不用明文傳輸
(4)能防範經過文件名猜想和查看html文件內容獲取重要信息
(5)能保證在網站收到工具後在給定時間內恢復,重要數據丟失不超過1小時
測試要點
(1)應用級的安全
應用級的安全測試目的在於查找Web系統自身程序設計中存在的安全隱患,測試區域有:
(1.1)註冊與登陸:有效、無效的用戶名和密碼;要注意是否存在大小寫敏感;能夠嘗試多少次的限制;是否能夠不登陸而直接瀏覽某個頁面
(1.2)在線超時:超時限制
(1.3)操做留痕:相關信息是否寫入日誌
(1.4)備份與恢復:數據庫增量備份;數據庫徹底備份;系統徹底備份
(2)傳輸級的安全
傳輸級的安全測試目的在於測試數據通過客戶端傳送到服務器可能存在的安全漏洞,服務器防範非法訪問的能力,測試要點:
(2.1)HTTPS和SSL測試;服務器端的腳本漏洞檢查;測試未經受權,就不能在服務器端放置和編輯腳本問題
(2.2)防火牆測試:防火牆功能;防火牆設置
(2.3)數據加密測試:對介入信息的傳送、存取、處理人的身份和相關內容進行驗證
(2.4)密鑰:密鑰的產生、分配保存、更換與銷燬
6、性能測試
(1)壓力測試:實際破壞一個Web應用系統,測試系統的反應,測試系統的限制和故障恢復能力
(2)負載測試:在某一負載級別上的性能,包括某個時刻同時訪問Web的用戶數量、在線數據處理的數量
(3)強度測試:測試對象在性能行爲異常或極端條件下(如資源減小或用戶過多)的可接受性,以此驗證系統軟硬件水平
(4)數據庫容量測試:經過存儲過程往數據庫表中插入必定數量的數據,看是否能及時顯示
(5)預期指標的性能測試:在需求分析和設計階段會提出一些性能指標,對於預先肯定的性能要求要首先進行測試
(6)獨立業務性能測試:對核心業務模塊作用戶併發測試,包括同一時刻進行徹底同樣的操做、同一時刻使用徹底同樣的功能
(7)組合業務性能測試:模擬多用戶的不一樣操做,最接近實際用戶使用狀況,按用戶實際的實際使用人數比例來模擬各個模塊的組合併發狀況
(8)疲勞強度性能測試:系統穩定運行狀況下,以必定負載壓力來長時間運行系統的測試
(9)網絡性能測試:準確展現帶寬、延遲、負載、端口的變化是如何影響用戶的相應時間的
(10)大數據量性能測試:實時大數據量,模擬用戶工做時的實時大數據量;極限狀態下的測試,系統使用一段時間,積累一段數據量時可否正常運行,以及對前面兩種進行結合
(11)服務器性能測試:在進行用戶併發性能測試、疲勞強度、大數據量性能測試時,完成對服務器性能的監控,並進行評估
(12)一些特殊的測試:配置測試、內存泄漏的一些特殊測試