陳連波
摘要:WEB信息系統(tǒng)交付一組復雜的內(nèi)容和功能給大量的終端用戶,使與服務器連接的所有客戶機都能共享使用WEB信息系統(tǒng)提供的內(nèi)容和功能。WEB信息系統(tǒng)測試通常包括:功能測試、性能測試、可用性測試、安全性測試、系統(tǒng)兼容性測試和接口測試。
關(guān)鍵詞:WEB信息系統(tǒng);測試
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2009)04-1004-02
WEB Information System Test Engineering Research
CHEN Lian-bo
(Tieling Radio Broadcasting and Television University Department of Science and Technology, Tieling 112000,China)
Abstract: The WEB information system pays group of complex contents and the function for the massive terminal user, enables all clients which connects with the server all to share uses the content and the function which the WEB information system provides.The WEB information system test usually includes: Function test, performance test, usability test, secure test, system compatibility test and connection test.
Key words: WEB information system; test
WEB信息系統(tǒng)交付一組復雜的內(nèi)容和功能給大量的終端用戶,使與服務器連接的所有客戶機都能共享使用WEB信息系統(tǒng)提供的內(nèi)容和功能。系統(tǒng)測試是把整個系統(tǒng)作為一個整體來查找問題,對于WEB應用系統(tǒng)而言,需要弄清WEB服務相互之間如何交互。WEB信息系統(tǒng)測試通常包括:功能測試、性能測試、可用性測試、安全性測試、系統(tǒng)兼容性測試和接口測試。
1 功能測試
功能測試包括鏈接測試、表單測試、數(shù)據(jù)校驗、Cookies測試、數(shù)據(jù)庫測試、應用程序特定的功能需求測試以及設計語言測試。
1)鏈接測試
鏈接是WEB應用系統(tǒng)的一個主要特征,它是在頁面之間切換和引導用戶去一些未知地址頁面的主要手段。鏈接測試可分為三個方面:首先,測試所有鏈接是否按指示的那樣確實鏈接到了應該鏈接的頁面;其次,測試所鏈接的頁面是否存在;最后,保證WEB應用系統(tǒng)上沒有孤立的頁面。鏈接測試可以通過Xenu Link Sleuth或HTML Link Validator軟件自動進行。
2)表單測試
當用戶使用表單進行注冊、登錄、信息提交等操作時,必須測試提交操作的完整性,以校驗提交服務器的信息的正確性。如果使用了默認值,還要檢驗默認值的正確性。如果表單某個字段只能接受指定的某些值,則對這個字段也要進行測試。
3)數(shù)據(jù)校驗
如果系統(tǒng)根據(jù)業(yè)務規(guī)則,需要對用戶輸入進行校驗,則要保證這些校驗功能正常工作。數(shù)據(jù)校驗可采用手動檢查,同時利用WinRunner工具形成WinRunner(QTP)腳本;在回歸測試以及升級版本測試時主要依靠WinRunner(QTP)自動回放測試。
4)Cookies測試
如果WEB應用系統(tǒng)使用了Cookies,就必須檢查Cookies是否能正常工作。測試的內(nèi)容包括Cookies是否起作用,是否按預定的時間進行保存,刷新對Cookies有什么影響等。如果在Cookies中保存了注冊信息,應確認該Cookies能夠正常工作而且已對這些信息進行加密。如果使用Cookies來統(tǒng)計次數(shù),需要驗證次數(shù)累計正確。Cookies測試可用IECookies View v1.50或 Cookies Manager v1.1進行。
5)數(shù)據(jù)庫測試
數(shù)據(jù)庫為WEB應用系統(tǒng)的管理、運行、查詢和實現(xiàn)用戶對數(shù)據(jù)存儲的請求等提供空間。在使用了數(shù)據(jù)庫的WEB應用系統(tǒng)中,可能發(fā)生兩種錯誤,分別是數(shù)據(jù)一致性錯誤和輸出錯誤。數(shù)據(jù)一致性錯誤主要是由于用戶提交的表單信息不正確而造成的;輸出錯誤主要是由于網(wǎng)絡傳輸速度或程序設計問題引起的。針對這兩種情況,可分別進行測試。
6)應用程序特定的功能需求測試
測試人員應該深刻理解需求說明文檔,對應用程序特定的功能需求進行驗證。
7)設計語言測試。
WEB設計語言版本的差異可以引起客戶端或服務器端嚴重的問題。除了HTML的版本問題外,使用不同的腳本語言開發(fā)的應用程序也要在不同的版本上進行驗證。
2 性能測試
性能測試包括以下內(nèi)容:壓力測試、連接速度測試和負載測試。
1)壓力測試
壓力測試必須對WEB服務應用以下四個基本條件進行有效的壓力測試。
重復:測試的重復就是一遍又一遍地執(zhí)行某個操作或功能。
并發(fā):是同時執(zhí)行多個操作的行為。
量級:是指每個操作中的負載量。
隨機變化:是指隨機使用前面的壓力原則中介紹的無數(shù)變化形式,在每次測試運行時應用許多不同的代碼路徑。
2)連接速度測試
用戶連接到WEB應用系統(tǒng)的速度根據(jù)上網(wǎng)方式的不同而變化。連接速度測試是測試WEB系統(tǒng)在不同上網(wǎng)方式中的響應時間。
3)負載測試。
測試WEB系統(tǒng)在某一負載級別上的性能,以保證WEB系統(tǒng)在需求范圍內(nèi)能正常工作。負載級別可以是某個時刻同時訪問WEB系統(tǒng)的用戶數(shù)量,也可以是在線數(shù)據(jù)處理的數(shù)量。
3 可用性測試
可用性測試包括:導航測試、圖形測試、內(nèi)容測試和整體界面測試。
1)導航測試:
在不同的用戶接口控制之間,或在不同的鏈接頁面之間,導航描述了用戶在一個頁面內(nèi)操作的方式。WEB應用系統(tǒng)的導航幫助信息要盡可能地準確。WEB應用系統(tǒng)的層次一旦確定,就要著手測試用戶導航功能。如果能讓最終用戶參與這種測試,效果將更加明顯。
2)圖形測試
在WEB應用系統(tǒng)中,適當?shù)膱D片和動畫能起到廣告宣傳的作用,又有美化頁面的功能。圖形測試的主要內(nèi)容有:要確保圖形有明確的用途,圖片或動畫不要胡亂地堆在一起,以免浪費傳輸時間;驗證所有頁面字體的風格是否一致;背景圖片應該與字體顏色和前景顏色相搭配;圖片的大小和質(zhì)量也是一個很重要的因素,一般采用JPG或GIF壓縮。
3)內(nèi)容測試
內(nèi)容測試用來檢驗WEB應用系統(tǒng)提供信息的正確性、準確性和相關(guān)性。信息的正確性是指信息是可靠的還是誤傳的;信息的準確性是指是否有語法或拼寫錯誤;信息的相關(guān)性是指是否可以在當前頁面找到與當前瀏覽信息相關(guān)的信息列表或入口。
4)整體界面測試
整體界面是指整個WEB應用系統(tǒng)的頁面結(jié)構(gòu)設計,是給系統(tǒng)用戶的一個整體感受。對整體界面的測試過程,是對最終用戶進行調(diào)查的過程。一般WEB應用系統(tǒng)采取在主頁上做一個調(diào)查問卷的形式,來得到最終用戶的反饋信息。所有的可用性測試都需要外部人員的參與,最好有最終用戶參與。
4 安全性測試
安全性測試包括:目錄設置測試、SSL測試、登錄驗證測試、日志文件測試和腳本語言測試。
1)目錄設置測試
WEB安全的第一步就是正確設置目錄。每個目錄下應該有index.html或main.html頁面,這樣就不會顯示該目錄下的所有內(nèi)容。
2)SSL測試
SSL能使用戶/服務器應用之間的通信不被攻擊者竊聽,并且始終對服務器進行認證,還可選擇對用戶進行認證。SSL協(xié)議在應用層協(xié)議通信之前就已經(jīng)完成加密算法、通信密鑰的協(xié)商及服務器認證工作。在此之后應用層協(xié)議所傳送的數(shù)據(jù)都會被加密,從而保證通信的私密性。
3)登錄驗證測試
登錄驗證測試用來驗證系統(tǒng)是否能夠阻止非法的用戶和非法的口令登錄;用戶登錄是否有次數(shù)限制;是否限制從某些IP地址登錄。
4)日志文件測試
驗證日志是否能夠記錄所有的事務處理;是否記錄失敗的注冊或登錄信息;是否記錄被盜用信用卡的使用;是否在每次事務完成的時候都進行保存;是否記錄IP地址;是否記錄用戶名。
5)腳本語言測試。
腳本語言是常見的安全隱患,經(jīng)驗豐富的黑客可以將服務器用戶名和口令發(fā)送給自己,找出站點使用了哪些腳本語言,并研究該語言的缺陷。在測試中,還需要測試沒有經(jīng)過授權(quán),就不能在服務器端放置和編輯腳本的問題。
5 系統(tǒng)兼容性測試
系統(tǒng)兼容性測試包括平臺測試、瀏覽器測試、分辨率測試、連接速率測試、打印機測試。
平臺測試是指在系統(tǒng)發(fā)布前,在各種操作系統(tǒng)下對WEB系統(tǒng)進行兼容性測試;瀏覽器測試是測試WEB系統(tǒng)在不同的瀏覽器中是否能夠正常顯示;分辨率測試是測試WEB系統(tǒng)在不同分辨率模式下是否正常顯示;連接速率測試是測試WEB系統(tǒng)在不同上網(wǎng)方式下等待首頁出現(xiàn)的時間;打印機測試是測試網(wǎng)頁打印是否正常。
6 接口測試
接口測試包括服務器接口、外部接口和錯誤處理。
1)服務器接口
第一個需要測試的接口是瀏覽器與服務器的接口。測試人員提交事務,然后查看服務器記錄,并驗證在瀏覽器上看到的正好是服務器上發(fā)生的。測試人員還可以查詢數(shù)據(jù)庫,確認事務數(shù)據(jù)已正確保存相關(guān)信息。
2)外部接口
有些WEB系統(tǒng)有外部接口,因此WEB系統(tǒng)要實時驗證信用卡數(shù)據(jù)以減少欺詐行為的發(fā)生。測試時要使用WEB接口發(fā)送一些事務數(shù)據(jù),分別對有效信用卡、無效信用卡和被盜信用卡進行驗證。
(3)錯誤處理
在理解需求的基礎上,充分發(fā)揮想像力,盡量比較全面地列出各種異常情況,驗證系統(tǒng)進行錯誤處理的能力。
7 結(jié)束語
本文從功能測試、性能測試、可用性測試、安全性測試、系統(tǒng)兼容性測試和接口測試六個方面闡述了如何進行WEB信息系統(tǒng)測試。只有認真進行WEB信息系統(tǒng)測試,才能盡可能多地發(fā)現(xiàn)并改正錯誤,保證WEB信息系統(tǒng)實現(xiàn)正常的功能。
參考文獻:
[1] Ron Patton.軟件測試[M].北京:機械工業(yè)出版社,2002.
[2] Rick D.Craig,Stefan P.Jaskiel.系統(tǒng)的軟件測試[M].北京:電子工業(yè)出版社,2003.
[3] Ralph M.Stair,George W.Reynolds.信息系統(tǒng)原理[M].北京:機械工業(yè)出版社,2000.
電腦知識與技術(shù)2009年4期