Web應用測試是軟件評測師必考的知識點,每年在上午場和下午場都會出題,Web應用是一類特殊的軟件,Web應用系統的開發同樣要經過需求分析、設計、編碼、實施等階段,所以對軟件的測試是貫穿整個軟件生命周期的。下面就Web應用測試的概念、分類等知識點進行總結學習。
一、針對Web系統的構成和Web系統的一些特點,我們需要對涉及Web系統質量的各個方面進行測試。
(1)按系統架構來分,可分為客戶端的測試、服務器端的測試和網絡上的測試;
(2)按職能來分,可分為應用功能的測試、Web應用服務的測試、安全系統的測試、數據庫服務的測試;
(3)按軟件的質量特性來分,又可分為功能測試、性能測試、安全性測試、兼容性測試和易用性測試;
(4)按照開發階段來分,可以分為設計的測試、編碼的測試和系統的測試。
二、Web應用系統開發完成后,需要對Web應用進行全面的測試,其測試方法與其他系統的測試既有相同之處,又有不同之處。
相同之處體現在下面幾個方面。
(1)測試內容基本相同:Web 應用系統作為軟件系統的一種形式,其測試內容也會包括功能、性能、易用性、兼容性和安全性測試等內容。
(2)某些項目的測試方法基本相同:例如Web應用程序的功能測試與其他系統的功能測試方法是一樣的,同樣是根據功能說明書、需求說明書等文檔,使用因果圖法、邊界值法等技術,設計測試用例進行測試。
(3)測試手段基本相同:Web. 應用系統的測試一樣會采用人工測試、工具測試、評估等手段。
鑒于Web系統的自身特點,其測試與傳統的軟件測試也有所不同,具體不同如下所示。
(1)首先是測試的重點不一樣:Web 應用系統的性能可能是開發者或用戶最關心的一個測試內容,由于Internet的不可預見性和用戶連接數的不固定性,人們經常對Web系統的穩定水平有所擔心。另外,一些不斷發展中的Web設計技術也使Web組件測試變得重要。安全性對某些涉及交易或重要數據的Web應用系統也很重要。由于用戶客戶端的不確定性,易用性測試和客戶端配置與兼容性測試也是必要的一個內容。
(2)其次是測試采用的工具有所不同:Web應用的一些測試,如鏈接測試、表單測試、界面測試等,通常采用可以重復執行的自動化工具進行,性能測試除了采用LoadRunner、QALoad等通用的負載壓力測試工具外,還有很多專門用于Web系統性能測試的工具,如WAST、ACT、Webload 等。
(3)最后Web應用系統迫切需要新的測試技術和方法:Web應用系統的開發技術是更新最快的開發技術之一,針對這種新組件、新技術的測試手段也必須及時探索,甚至要開發出新的測試工具以滿足需求。
三、Web應用系統一般常見的測試類型包括:
(1)功能測試:和一般的功能測試的用例設計方法基本一樣。
(2)易用性測試:包括界面測試、輔助功能測試(例如使用說明、導航、站點地圖和幫助等)和圖形測試等。
(3)性能測試(負載壓力測試):性能是用戶經常會遇到的一個棘手的問題,也可能是Web系統在投入實際使用以前最為關心的問題。
(4)客戶端配置測試與兼容性測試:一般可分為瀏覽器的配置測試、平臺(操作系統)兼容性測試和瀏覽器兼容性測試(不同瀏覽器對安全性和Java設置是不一樣的)三個方面。測試瀏覽器的兼容性可以與操作系統的兼容性結合起來,最有效的方法是創建一個兼容性矩陣,在這個矩陣中,測試不同版本操作系統上的不同廠商、不同版本的瀏覽器對某些構件和設置的適應性(下午場考試經常出現)。
(5)安全性測試:一個完整的Web安全體系測試可以從部署與基礎結構、輸入驗證、身份驗證、授權、配置管理、敏感數據、會話管理、加密、參數操作、異常管理、審核和日志記錄等幾個方面入手。
四、Web測試的測試點包括:
(1)源代碼規則分析。主要方法是使用基于規則檢查的工具,讀取輸入的源代碼,然后將源代碼與編碼標準或語言規則相對照,以找出存在于兩者之間的不一致性,或者存在于源代碼當中的潛在錯誤。
(2)鏈接測試。鏈接是Web應用系統的一個主要特征,它是在頁面之間切換和指導用戶去一些不知道地址的頁面的主要手段。鏈接測試可分為三個方面:
①測試所有鏈接是否按指示的那樣確實鏈接到了該鏈接的頁面;
②測試所鏈接的頁面是否存在;
③保證Web應用系統上沒有孤立的頁面,所謂孤立頁面是指沒有鏈接指向該頁面,只有知道正確的URL地址才能訪問。
(3)框架測試。主要檢查點為:是否可隨瀏覽窗口的變化自動調整大小;在當前窗口不能完全顯示內容時是否提供滾動條功能;能否在正確的目標框架中打開新頁面。
(4)表格測試。主要檢查表格能否隨瀏覽器窗口的變化或頁面的變化自動調整大小。
(5)圖形測試。主要檢查點為:顏色飽和度和對比度是否合適;需要突出的鏈接的顏色是否容易識別;是否正確加載所有的圖形。
下面是近幾年對Web應用測試考察過的真題,基本上在每年都會出題,一般是1-2道題,以后仍是考試出題的重點,大家要重視起來。
【2017年67題】以下關于Web測試的敘述中,不正確的是(? )
A、Web軟件的測試貫穿整個軟件生命周期
B、按系統架構劃分,Web測試分為客戶端測試、服務端測試和網絡測試
C、Web系統測試與其他系統測試的測試內容基本不同但測試重點相同
D、Web性能測試可以采用工具輔助
解析:本題考查Web測試的基礎知識。
web系統測試與其它系統測試測試內容基本相同只是測試重點不同。
故正確答案為C
【2018年67題】以下關于web測試的敘述中,不正確的是( ) 。
A.與其它系統的測試內容不同
B.與其它系統的測試手段基本相同
C.與其它系統的測試重點不同
D.與其它系統采用的測試工具部分不同
解析:本題考查web測試的基礎知識。
web系統測試與其它系統測試測試內容基本相同只是測試重點不同。
故正確答案為:A
【2019年64題】以下關于Web的兼容性測試的敘述中,不正確的是( )。
A. 需要針對主流操作系統進行平臺兼容性測試
B. 不同瀏覽器的安全性設計是一致的
C. 層次結構風格在不同的瀏覽器上可能有不同的顯示
D. 瀏覽器的兼容性和操作系統的兼容性可以結合起來進行測試
解析:本題考查軟件測試的基礎知識。
不同瀏覽器的安全性設計是不一致的。故正確答案為:B
【2019年67題】Web測試的測試點包括( )。
①鏈接測試?
②表格測試
③框架測試?
④圖形測試。
A. ①②???????
B. ①③???????
C. ①②③????????
D. ①②③④
解析:本題考查軟件測試的基礎知識。
①②③④描述的方面都屬于Web測試的測試點。
故正確答案為:D