摘 要:B/S結(jié)構(gòu)是一種隨著Web的發(fā)展而設(shè)計的一種新型的軟件結(jié)構(gòu)。由于其設(shè)計的合理性和維護管理的方便性得到了廣泛的應(yīng)用。軟件測試是確保軟件質(zhì)量的重要手段,不同的軟件系統(tǒng)有著不同的測試方案,B/S結(jié)構(gòu)的軟件系統(tǒng)測試在傳統(tǒng)的軟件系統(tǒng)測試上又有著新的挑戰(zhàn)。本文在介紹B/S結(jié)構(gòu)的基礎(chǔ)上,對基于B/S結(jié)構(gòu)的軟件測試技術(shù)進行了詳細(xì)的介紹和深入的分析。
關(guān)鍵字:B/S結(jié)構(gòu);軟件測試;軟件結(jié)構(gòu)
中圖分類號:TP311.52
當(dāng)今社會,隨著互聯(lián)網(wǎng)技術(shù)的不斷向前發(fā)展,圍繞著互聯(lián)網(wǎng)的軟件技術(shù)應(yīng)運而生。基于B/S結(jié)構(gòu)的軟件系統(tǒng)的設(shè)計就是很好的體現(xiàn)。在Browser/Server(B/S)架構(gòu)下,用戶可以通過web網(wǎng)頁來訪問系統(tǒng),前端的頁面可以負(fù)責(zé)處理少量的事務(wù)邏輯,軟件系統(tǒng)中的重要工作都由服務(wù)器端來完成,這種設(shè)計方法,能夠降低系統(tǒng)用戶的工作量,同時也減小了軟件維護的代價。隨著基于B/S結(jié)構(gòu)的軟件系統(tǒng)的廣泛應(yīng)用,越來越多的人開始關(guān)注應(yīng)用于網(wǎng)絡(luò)中的軟件系統(tǒng)的質(zhì)量,為了確保軟件的質(zhì)量和以便日后對軟件系統(tǒng)的功能進行擴展和維護,就要注重在系統(tǒng)功能實現(xiàn)后的軟件測試。B/S結(jié)構(gòu)的軟件系統(tǒng)不同于傳統(tǒng)的軟件系統(tǒng),下面對B/S結(jié)構(gòu)的軟件系統(tǒng)進行介紹。
1 B/S結(jié)構(gòu)介紹及其軟件的特征
B/S結(jié)構(gòu)(Browser/Server,瀏覽器/服務(wù)器模式),是WEB興起后的一種網(wǎng)絡(luò)結(jié)構(gòu)模式,WEB瀏覽器是客戶端最主要的應(yīng)用軟件。這種模式統(tǒng)一了客戶端,將系統(tǒng)功能實現(xiàn)的核心部分集中到服務(wù)器上,簡化了系統(tǒng)的開發(fā)、維護和使用??蛻魴C上只要安裝一個瀏覽器(Browser),如Netscape Navigator或Internet Explorer,服務(wù)器安裝SQL Server、Oracle、MYSQL等數(shù)據(jù)庫。瀏覽器可以通過Web Server同數(shù)據(jù)庫進行數(shù)據(jù)交互。B/S最大的優(yōu)點就是可以在任何地方進行操作而不用安裝任何專門的軟件,只要有一臺能上網(wǎng)的電腦就能使用,客戶端零安裝、零維護。系統(tǒng)的擴展簡單易行。
不同于傳統(tǒng)的軟件結(jié)構(gòu),B/S結(jié)構(gòu)對安全以及訪問速度的多重的考慮,建立在更需要更加優(yōu)化的基礎(chǔ)之上,比C/S有更高的要求。B/S結(jié)構(gòu)在軟件重用方面,要求構(gòu)建要相對獨立,能夠有較好的重用性。B/S結(jié)構(gòu)的軟件在系統(tǒng)維護上較傳統(tǒng)的軟件有較大的提高,可以方便模塊個別的更換,以實現(xiàn)系統(tǒng)的無縫升級,可以將系統(tǒng)維護開銷到最小。用戶從網(wǎng)上自行下載安裝就可以實現(xiàn)升級。B/S結(jié)構(gòu)也有
基于B/S結(jié)構(gòu)的軟件測試技術(shù)一定的問題,就是B/S建立在廣域網(wǎng)之上,對安全的控制能力相對弱,可能面向不可知的用戶,這就給系統(tǒng)帶來了一定的安全隱患?;谝陨蠈/S結(jié)構(gòu)的介紹,下面將針對B/S結(jié)構(gòu)的特點,對其軟件系統(tǒng)的測試進行分析和研究。
2 基于B/S結(jié)構(gòu)的軟件系統(tǒng)測試方法
基于B/S結(jié)構(gòu)的軟件系統(tǒng)測試主要分為瀏覽器兼容性測試、安全性測試、鏈接測試、頁面易用性測試四個方面。下面將對這些測試分別進行介紹和研究分析。
2.1 瀏覽器兼容性測試
瀏覽器是WEB系統(tǒng)中的核心組成構(gòu)件,不同的瀏覽器對Javascript,HTML規(guī)格有不同的支持。目前最常用的瀏覽器是IE瀏覽器。還有的用戶喜歡使用火狐或是360瀏覽器等等。這些版本不同的瀏覽器對WEB系統(tǒng)來說是一個很大的挑戰(zhàn),所以進行瀏覽器兼容性測試是必要的。
關(guān)于瀏覽器的兼容性測試首先要準(zhǔn)對具體的業(yè)務(wù)流程和主要核心模塊,快速的執(zhí)行瀏覽器兼容性測試。避免遺漏系統(tǒng)的某些功能,盡量保證全面有效地對用戶所使用的瀏覽器進行兼容性測試。其次,要準(zhǔn)確的找到核心瀏覽器,根據(jù)具體情況優(yōu)化測試方法、提高測試的效率。最后,還要保證要完整的將用戶需求說明書中提到的支持的所有瀏覽器,根據(jù)瀏覽器廠商和版本分布,按次序?qū)g覽器進行兼容性測試。
對于前端開發(fā)工程師來說,確保代碼在各種主流瀏覽器的各個版本中都能正常工作是件很費時的事情,幸運的是,有很多優(yōu)秀的工具可以幫助測試瀏覽器的兼容性,讓我們一起看看這些很棒的工具。例如現(xiàn)階段廣泛應(yīng)用的Spoon Browser Sandbox、Superpreview等等。
2.2 安全性測試
基于B/S結(jié)構(gòu)的安全測試具有其獨特性,所測試的內(nèi)容主要是與WEB相關(guān)的內(nèi)容,包括用戶登入系統(tǒng)時的身份分認(rèn)證、消息傳遞機密性、信息完備性、系統(tǒng)權(quán)限設(shè)置、訪問控制等等。例如當(dāng)用戶進入程序后進行注冊或是登陸時的安全性測試,還有用戶使用系統(tǒng)超時的安全性測試等等。
關(guān)于B/S結(jié)構(gòu)的軟件系統(tǒng)安全性測試,可以采用與一般軟件系統(tǒng)相類似的測試方法,如黑盒測試、白盒測試等。
2.3 鏈接測試
網(wǎng)站上的網(wǎng)頁是互相鏈接的,單擊被稱為超鏈接的文本或圖形就可以鏈接到其他頁面。整個網(wǎng)站的鏈接猶如一張龐大的蜘蛛網(wǎng),稍不留神就會有所遺漏。盡管網(wǎng)站的鏈接測試看起來似乎沒有比較高深的技術(shù)
含量,但同時,特別是對于一個較大的網(wǎng)站的,涉及到上百甚至上千個頁面,鏈接測試需要較大的測試量,因此,提高測試的效率成了網(wǎng)站鏈接測試的一個重要方面。進行鏈接測試時,我們需要重點把握以下幾個原則:鏈接的正確性,即單擊某個地址之后,應(yīng)該能夠達(dá)到正確的頁面;要測試所鏈接的頁面是否存在;要保證系統(tǒng)中沒有孤立的頁面,也就是說,網(wǎng)站中的頁面彼此之間應(yīng)該有聯(lián)系,而不是獨立在整個系統(tǒng)之外。鏈接測試可以手動進行,也可以自動進行。
2.4 頁面可用性測試
對于B/S結(jié)構(gòu)下的系統(tǒng)可用性測試主要包括:界面導(dǎo)航性測試、界面圖形測試、界面內(nèi)容測試。界面導(dǎo)航性測試主要是測試用戶在系統(tǒng)頁面內(nèi)的操作方式、測試以導(dǎo)航鏈接到的頁面為主體,主要測試導(dǎo)航能否快速的、正確的鏈接到用戶需求說明書中要求的頁面。界面圖形測試是檢查圖形能否在系統(tǒng)扮演一定的功能,或是能起到美化系統(tǒng)頁面的作用。界面內(nèi)容測試是檢驗該軟件系統(tǒng)提供的信息是否能夠正確的反應(yīng)在頁面中,或是內(nèi)容和頁面標(biāo)題是否匹配。
3 結(jié)束語
基于B/S架構(gòu)的WEB應(yīng)用軟件系統(tǒng)測試是一項復(fù)雜的系統(tǒng)任務(wù),B/S結(jié)構(gòu)的軟件測試方法與傳統(tǒng)軟件的測試方法不盡相同,有很多其獨有的特點,為了使基于B/S結(jié)構(gòu)的軟件系統(tǒng)測試能夠順利有效地完成,應(yīng)當(dāng)針對B/S結(jié)構(gòu)的軟件的特點,增加相應(yīng)的測試方法,例如瀏覽器兼容性測試、安全性測試、鏈接測試、頁面易用性測試等。本文在介紹B/S結(jié)構(gòu)的概念及特點的基礎(chǔ)上,通過具體的測試過程和產(chǎn)生的測試結(jié)果,對相應(yīng)的系統(tǒng)測試方法進行了詳細(xì)的說明和分析。未來,B/S結(jié)構(gòu)的研究發(fā)展還會繼續(xù)深入,對應(yīng)的系統(tǒng)測試方法和策略也應(yīng)隨之加強,只有這樣,才能保證基于B/S架構(gòu)的軟件質(zhì)量和實際應(yīng)用效果。
參考文獻(xiàn):
[1]鄭人杰,許靜,于波.軟件測試[M].北京:人民郵電出版社,2011.
[2]夏啟明.軟件測試及評價的復(fù)用策略研究及其實現(xiàn)[D].武漢大學(xué),2010.
[3]李志崢,楊社堂.基于B/S結(jié)構(gòu)下的軟件系統(tǒng)測試研究[J].科技情報開發(fā)與經(jīng)濟,2006(07):232-234+251.
[4](美)PonPatton.軟件測試[J].北京:機械工程出版社,2006(04).
[5]蘇興華.論軟件測試[J].信息技術(shù)與應(yīng)用,2003(09):33-37.
[6]De Vries.Software Testing for Security[J].Network Security,2007(05):11-15.
作者簡介:莊元東(1974-),男,吉林敦化人,質(zhì)量部主任,高級工程師,本科,研究方向:電子信息產(chǎn)品檢測。
作者單位:吉林省電子信息產(chǎn)品監(jiān)督檢驗研究院,長春 130021