史習(xí)陽
摘 要 云計(jì)算的創(chuàng)新和發(fā)展影響和改變了傳統(tǒng)軟件測試領(lǐng)域,筆者從云計(jì)算的結(jié)構(gòu)體系以及云計(jì)算技術(shù)應(yīng)用談起,剖析了云計(jì)算技術(shù)在軟件測試方面的滲透,進(jìn)而總結(jié)了基于云計(jì)算環(huán)境下的軟件測試三大特征,最后就云測試的最新研究進(jìn)展進(jìn)行了探討。
關(guān)鍵詞 云計(jì)算;云測試;軟件測試
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-7597(2014)09-0058-01
近年來,云計(jì)算(Cloud Computing)異軍突起,已經(jīng)發(fā)展成為新一代信息技術(shù)革命的基礎(chǔ)產(chǎn)業(yè)。尤其在軟件應(yīng)用領(lǐng)域,無論是軟件工具開發(fā),還是開發(fā)環(huán)境和工作模式,可以說云計(jì)算深刻影響了傳統(tǒng)軟件產(chǎn)品的供應(yīng)和消費(fèi)模式,這些也勢必將改變軟件測試的技術(shù),方法和工具。在云計(jì)算環(huán)境下,軟件的測試活動(dòng)被拓展到云環(huán)境條件下進(jìn)行,充分調(diào)用了云環(huán)境條件下提供的各種計(jì)算和資源平臺(tái)。
1 云計(jì)算體系的結(jié)構(gòu)組成
云計(jì)算是計(jì)算機(jī)技術(shù)發(fā)展到一定程度,基于軟件和硬件互動(dòng)而產(chǎn)生的創(chuàng)新模式:一方面需要它借助互連網(wǎng)絡(luò)獲得服務(wù)支持,因而具有鮮明的互連網(wǎng)特征;另一方面云計(jì)算搭建基于眾多主機(jī)或服務(wù)器構(gòu)成的資源集群,其需要對這些集群進(jìn)行協(xié)同化的統(tǒng)一管理。
從其系統(tǒng)構(gòu)成來看,云計(jì)算主要包括物理基礎(chǔ)設(shè)施、云計(jì)算服務(wù)以及云計(jì)算運(yùn)營等三個(gè)組成部分。物理基礎(chǔ)設(shè)施是承載云計(jì)算的物質(zhì)基礎(chǔ),包括服務(wù)器,存儲(chǔ),網(wǎng)絡(luò)及其相關(guān)的管理技術(shù);云計(jì)算服務(wù)是云計(jì)算的核心和中樞神經(jīng),包括基礎(chǔ)設(shè)施即服務(wù)(IaaS),平臺(tái)即服務(wù)(PaaS)以及軟件即服務(wù)(SaaS)三個(gè)層次;而云計(jì)算運(yùn)營則是提供云計(jì)算服務(wù)運(yùn)營的各項(xiàng)關(guān)鍵技術(shù)的總括,包含認(rèn)證,監(jiān)控,計(jì)費(fèi)等各個(gè)環(huán)節(jié)。
2 云計(jì)算技術(shù)在軟件測試中的應(yīng)用
伴隨著云計(jì)算技術(shù)的蓬勃發(fā)展,尤其是基于互聯(lián)網(wǎng)分布式和協(xié)同計(jì)算技術(shù)的不斷成熟,軟件測試也發(fā)生了深刻變革,一種基于云計(jì)算環(huán)境下的軟件測試技術(shù),即云測試也應(yīng)運(yùn)而生。云測試的誕生離不開云計(jì)算技術(shù)的發(fā)展與創(chuàng)新,離不開云計(jì)算技術(shù)在軟件測試領(lǐng)域滲透和應(yīng)用。在云測試中應(yīng)用的主要云計(jì)算核心技術(shù)包括如下幾點(diǎn)。
1)分布式存儲(chǔ)技術(shù)。云計(jì)算的海量數(shù)據(jù)運(yùn)用分布式存儲(chǔ)技術(shù)存儲(chǔ)在多個(gè)設(shè)備上,借助互聯(lián)網(wǎng)絡(luò)可以方便地實(shí)現(xiàn)系統(tǒng)的拓展,顯著提供云計(jì)算系統(tǒng)的利用效率和可靠性能,為云測試提供強(qiáng)大的物理基礎(chǔ)設(shè)施。
2)數(shù)據(jù)管理技術(shù)。 在云計(jì)算中,涉及到大量的復(fù)雜的海量數(shù)據(jù),這些天文量級(jí)的海量數(shù)據(jù)對傳統(tǒng)數(shù)據(jù)管理提出了挑戰(zhàn)。如何有效管理這些海量數(shù)據(jù)并應(yīng)用于分布式存儲(chǔ)設(shè)備,是云計(jì)算發(fā)展的核心技術(shù)。
3)平臺(tái)管理技術(shù)。 云計(jì)算的數(shù)據(jù)存儲(chǔ)在多個(gè)設(shè)備上且這些設(shè)備分布各處,因而如果保證這些設(shè)備能夠統(tǒng)一步伐,實(shí)現(xiàn)云計(jì)算或者云測試結(jié)果的有效輸出就顯得尤為關(guān)鍵。對于云計(jì)算而言,高效的平臺(tái)管理技術(shù)是其核心保證,也是目前云計(jì)算領(lǐng)域的重點(diǎn)研究課題。
3 基于云計(jì)算環(huán)境下的軟件測試特征及優(yōu)點(diǎn)
依托于云計(jì)算的軟件測試與傳統(tǒng)的基于本地環(huán)境的軟件測試有諸多不同。筆者認(rèn)為可以從性價(jià)比這個(gè)角度切入,將基于云計(jì)算環(huán)境下的云測試簡要?dú)w結(jié)為技術(shù)、服務(wù)質(zhì)量以及價(jià)格三個(gè)方面的特征進(jìn)行闡述。
1)測試技術(shù)平臺(tái)化?;谠朴?jì)算環(huán)境的軟件測試可以由云測試平臺(tái)提供測試的基礎(chǔ)設(shè)施和各方面的資源支持,無需本地化的軟硬件投資,并通過眾包模式獲取專業(yè)測試領(lǐng)域?qū)<倚腿瞬拧谋举|(zhì)說,由于云計(jì)算實(shí)現(xiàn)了平臺(tái)化,將眾多的測試技術(shù)要求從本地移植到云計(jì)算平臺(tái),讓測試更容易實(shí)現(xiàn),因而降低了測試的門檻以及資源需求。
2)統(tǒng)一可控的質(zhì)量保證。相比傳統(tǒng)軟件測試模式的分散式管理容易導(dǎo)致參差不齊的軟件質(zhì)量,基于云計(jì)算環(huán)境的軟件測試借助強(qiáng)大的云平臺(tái),實(shí)現(xiàn)了統(tǒng)一管理,可有效實(shí)現(xiàn)軟件測試的標(biāo)準(zhǔn)化和規(guī)范化,保障軟件質(zhì)量的完整性與統(tǒng)一性。
3)有效降低測試成本。傳統(tǒng)的軟件測試模式需要大量的基礎(chǔ)設(shè)施投資以及人力投資,尤其是對一些特殊性的項(xiàng)目,可能造成脈沖性浪費(fèi)。云計(jì)算測試通過云平臺(tái)的協(xié)同效應(yīng),可有效降低測試的基礎(chǔ)設(shè)施以及人力資源投資,降低測試的復(fù)雜度,有效降低測試成本。
4 基于云計(jì)算環(huán)境的軟件測試應(yīng)用現(xiàn)狀及平臺(tái)研究進(jìn)展
云測試平臺(tái)綜合了復(fù)雜的軟硬件和服務(wù),是云測試領(lǐng)域的核心技術(shù),因而也備受學(xué)界和工業(yè)界的高度重視。日本筑波大學(xué),瑞士洛桑理工大學(xué),英國約克大學(xué)等諸多知名學(xué)府的專家和學(xué)者或搭建自己的云測試平臺(tái)模型,或是對云測試核心技術(shù)進(jìn)行闡述研究。筑波大學(xué)開發(fā)了一款基于云計(jì)算的可靠并行分布式測試平臺(tái),支持虛擬故障插入技術(shù)。而洛桑理工大學(xué)則通過研究云測試和預(yù)期軟件質(zhì)量直接的關(guān)系,提出測試即服務(wù),試圖降低軟件測試成本。
與此同時(shí),在工業(yè)界多家知名計(jì)算機(jī)服務(wù)商業(yè)提供了商業(yè)化的云測試平臺(tái)服務(wù),有力地推動(dòng)云測試從理論研究到商業(yè)化轉(zhuǎn)變進(jìn)程。從平臺(tái)類型上,這些眾多商業(yè)化的云測試平臺(tái)主要分為私有云、公共云以及混合云三種平臺(tái)類型;在業(yè)務(wù)模式上,各家既有提供測試外包服務(wù),也有專注于客戶自行測試。IBM推出了一款名叫Smart Business Test Cloud的私有云,提供自行測試和測試外包兩種模式的服務(wù),幫助企業(yè)建立虛擬,安全,動(dòng)態(tài)可拓展的測試環(huán)境,因而其測試環(huán)境位于公司防火墻之后,所以其是公司私有云的一部分。專業(yè)云測試公司CloudTesting推出的cloud testing平臺(tái),提供多種瀏覽器平臺(tái)。用戶只需要編寫測試腳本并上傳到其網(wǎng)站,就可以借助cloud testing平臺(tái)運(yùn)行測試腳本,在商業(yè)模式上,cloud testing 平臺(tái)也進(jìn)行了探索,提出按需付款的商業(yè)模式。另一件專業(yè)化公司UTest推出的Utest測試平臺(tái),通過云計(jì)算,眾包等方式幫助開發(fā)者進(jìn)行軟件測試,查找錯(cuò)誤和解決問題,提供測試外包服務(wù),Utest還針對不同的軟件測試特點(diǎn)和需求將測試分為五種方式:功能測試,負(fù)載測試,安全測試,本地化測試以及可用測試。
參考文獻(xiàn)
[1]李喬,鄭嘯.云計(jì)算研究現(xiàn)狀綜述[J].計(jì)算機(jī)科學(xué),2011,38(4).
[2]李喬,柯棟梁,王小林.云測試研究綜述[J].計(jì)算機(jī)應(yīng)用研究,2012,29(12).
[3]王偉軍,姜毅,等.云計(jì)算環(huán)境下軟件測試研究進(jìn)展[J].現(xiàn)代圖書情報(bào)技術(shù),2012,226(11).
[4]朱少民.軟件測試方法和技術(shù)[M].清華大學(xué)出版社,2010.endprint