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