0 引言
近十多年來,國家成立了多家軟件產(chǎn)品質(zhì)量監(jiān)督檢驗(yàn)中心,并投資興建了大量的軟件工程化管理和測試驗(yàn)證環(huán)境。這些基礎(chǔ)設(shè)施和測試環(huán)境為國家的重點(diǎn)領(lǐng)域工程質(zhì)量監(jiān)督檢驗(yàn)起到了重要的作用,但也存在一定的問題:各家質(zhì)檢機(jī)構(gòu)地理位置分散、資源無法共享使用,資源規(guī)模建設(shè)不平衡、資源重復(fù)性建設(shè)、資源建設(shè)后閑置未用、大部分資源只能在實(shí)驗(yàn)室使用等,這些問題直接導(dǎo)致了軟件產(chǎn)品質(zhì)檢資源的應(yīng)用水平普遍較低,重點(diǎn)領(lǐng)域和新技術(shù)領(lǐng)域的檢測能力不足。
如何將這些軟件質(zhì)檢資源在保障國家重點(diǎn)型號(hào)工程建設(shè)的同時(shí),面向我國各行業(yè)領(lǐng)域企業(yè)提供便捷的質(zhì)檢服務(wù),多層次化地提供質(zhì)量保證服務(wù),是一項(xiàng)意義重大的工作,這其中面臨著如何有效整合利用這些資源的難題。國外學(xué)術(shù)界和產(chǎn)業(yè)界已經(jīng)有不少研究人員對(duì)云計(jì)算環(huán)境下的軟件測試問題開展了相關(guān)研究,相對(duì)而言,國內(nèi)這方面的研究還處于起步階段[1]。
云計(jì)算技術(shù)的不斷完善,推動(dòng)軟件開發(fā)技術(shù)和應(yīng)用模式正在向以用戶為中心轉(zhuǎn)變。云計(jì)算是軟件服務(wù)化的模式,可以按照用戶需要?jiǎng)討B(tài)地提供計(jì)算、存儲(chǔ)、應(yīng)用等各類資源,具有可動(dòng)態(tài)的伸縮性、使用成本比較低、可管理性好、節(jié)約能耗、安全便捷等優(yōu)點(diǎn),解決了資源難以整合使用的難題。
為此,本文分析了軟件質(zhì)檢資源聚合技術(shù),設(shè)計(jì)并實(shí)現(xiàn)了基于云計(jì)算的測試公共服務(wù)平臺(tái),最終為整合利用分散的測試資源提供了相應(yīng)的手段。
1 平臺(tái)的主要功能
1.1 軟件質(zhì)檢資源聚合服務(wù)
軟件質(zhì)檢資源主要包括硬件基礎(chǔ)設(shè)施和軟件質(zhì)檢工具兩個(gè)方面。目前,國內(nèi)軟件質(zhì)檢機(jī)構(gòu)均具有一定規(guī)模的硬件基礎(chǔ)設(shè)施和軟件質(zhì)檢工具,但由于地域限制、職責(zé)劃分等方面的原因,未能得到高效的應(yīng)用。通過統(tǒng)一的平臺(tái)接口、結(jié)合目前業(yè)內(nèi)新興的云計(jì)算技術(shù),可以在一定程度上聚合閑置資源,提高其利用率。
1.1.1 基礎(chǔ)設(shè)施
采用云計(jì)算技術(shù)整合國內(nèi)軟件質(zhì)檢機(jī)構(gòu)的硬件基礎(chǔ)設(shè)施資源,對(duì)分散在各地的國內(nèi)軟件質(zhì)檢機(jī)構(gòu)的硬件資源進(jìn)行統(tǒng)一的管控,構(gòu)建測試云平臺(tái)的基礎(chǔ)設(shè)施層,具體包括主機(jī)、存儲(chǔ)、網(wǎng)絡(luò)、其他硬件資源等。
通過統(tǒng)一的軟件質(zhì)檢平臺(tái)接口,根據(jù)用戶需求提供基礎(chǔ)設(shè)施服務(wù),用戶能夠通過租用的方式訪問并使用大量的基礎(chǔ)設(shè)施資源,可為用戶提供大規(guī)模或超大規(guī)模的性能驗(yàn)證能力[2]。用戶在軟件質(zhì)檢平臺(tái)下使用這些基礎(chǔ)設(shè)施資源,不需要關(guān)心硬件設(shè)施的物理位置,只需要按測試時(shí)間支付資源使用費(fèi)用,用戶能夠以高性價(jià)比的方式獲得計(jì)算資源,無需投入大型的專用測評(píng)實(shí)驗(yàn)室的建設(shè)。
在此基礎(chǔ)設(shè)施層之上,根據(jù)行業(yè)發(fā)展需要,軟件質(zhì)檢平臺(tái)可以定制提供不同的大型平臺(tái)應(yīng)用服務(wù)解決方案,供用戶靈活選擇使用,如移動(dòng)、電信等平臺(tái)的大規(guī)模移動(dòng)應(yīng)用計(jì)算服務(wù)。
1.1.2 質(zhì)檢工具資源
軟件質(zhì)檢平臺(tái)采用云計(jì)算技術(shù),建立統(tǒng)一的測試工具資源池,通過虛擬化技術(shù),將各種測試資源按照行業(yè)領(lǐng)域等進(jìn)行合理的配置,形成符合行業(yè)軟件質(zhì)量檢驗(yàn)標(biāo)準(zhǔn)的資源模板。為用戶提供“一站式服務(wù)”門戶,用戶需要時(shí)通過申請(qǐng)即可使用,使用完成后,系統(tǒng)自動(dòng)回收資源,放入測試工具資源池。綜合分析質(zhì)檢工具資源的使用方式主要包括以下幾類:
(1)單機(jī)運(yùn)行的軟件。對(duì)于可單機(jī)運(yùn)行的軟件,通過虛擬化技術(shù),將其移植到云計(jì)算應(yīng)用平臺(tái)上,通過統(tǒng)一的平臺(tái)向軟件企業(yè)或相關(guān)質(zhì)檢機(jī)構(gòu)提供遠(yuǎn)程質(zhì)檢服務(wù)。
(2)分布式應(yīng)用軟件。對(duì)于需要超大規(guī)模并發(fā)用戶數(shù)的質(zhì)檢服務(wù)需求,單個(gè)質(zhì)檢機(jī)構(gòu)無法單獨(dú)完成,通過平臺(tái)進(jìn)行管理調(diào)度,聚合多家監(jiān)測機(jī)構(gòu)現(xiàn)有的資源,發(fā)布統(tǒng)一的檢驗(yàn)?zāi)_本,協(xié)作完成質(zhì)檢業(yè)務(wù),同時(shí)平臺(tái)匯總質(zhì)檢結(jié)果數(shù)據(jù)。
(3)對(duì)資源占用率較高的質(zhì)檢工具。由于現(xiàn)有的虛擬化技術(shù)存在資源損耗,平臺(tái)通過視頻壓縮的遠(yuǎn)程顯示技術(shù),以無損的形式將相關(guān)應(yīng)用提供給終端用戶。
1.2 行業(yè)軟件質(zhì)檢解決方案
經(jīng)過多年的實(shí)踐,各質(zhì)檢機(jī)構(gòu)在特定行業(yè)(如軌道交通、汽車電子、航空機(jī)載軟件等)的軟件產(chǎn)品的質(zhì)量監(jiān)督檢驗(yàn)過程中積累了大量的經(jīng)驗(yàn),并對(duì)特定行業(yè)的相關(guān)軟件標(biāo)準(zhǔn)有了較深的理解,但是沒有形成一個(gè)針對(duì)行業(yè)領(lǐng)域軟件質(zhì)檢的完整解決方案。這就需要各質(zhì)檢機(jī)構(gòu)及行業(yè)領(lǐng)域相關(guān)組織共同研究分析,將這些經(jīng)驗(yàn)和理解知識(shí)化、系統(tǒng)化,使之形成特定行業(yè)的軟件質(zhì)量監(jiān)督檢驗(yàn)解決方案,并通過軟件質(zhì)檢平臺(tái)對(duì)外提供服務(wù),具體包括如下內(nèi)容:
(1)通過軟件質(zhì)檢平臺(tái)聯(lián)合特定行業(yè)的龍頭企業(yè),以聯(lián)合實(shí)驗(yàn)室、技術(shù)中心等不同形式發(fā)布有針對(duì)性的軟件質(zhì)量監(jiān)督檢驗(yàn)整體解決方案,幫助企業(yè)增強(qiáng)創(chuàng)新能力,形成具有自主知識(shí)產(chǎn)權(quán)的技術(shù)和產(chǎn)品;推動(dòng)產(chǎn)學(xué)研聯(lián)合,促進(jìn)技術(shù)成果轉(zhuǎn)化、適用技術(shù)推廣和創(chuàng)新資源共享;培育示范試點(diǎn)工程,建設(shè)不同領(lǐng)域軟件質(zhì)量監(jiān)督檢驗(yàn)推廣示范中心,輻射全國,帶動(dòng)全行業(yè)、全領(lǐng)域的軟件質(zhì)量提升。
(2)以行業(yè)領(lǐng)域?yàn)楸尘埃瑢⒏髻|(zhì)檢機(jī)構(gòu)成功的測試案例進(jìn)行分類整理,構(gòu)建對(duì)應(yīng)的軟件質(zhì)檢知識(shí)庫(包括測試用例庫、產(chǎn)品缺陷庫、質(zhì)檢工具應(yīng)用方案等),并使用語義和數(shù)據(jù)挖掘技術(shù)對(duì)這些信息資源進(jìn)行處理,用戶可通過軟件質(zhì)檢平臺(tái)快捷地獲取相關(guān)領(lǐng)域的質(zhì)檢方案。
(3)軟件質(zhì)檢平臺(tái)可以記錄行業(yè)軟件質(zhì)檢過程和結(jié)果,不斷豐富知識(shí)管理的各個(gè)信息庫,并獲得更精確的質(zhì)量數(shù)據(jù)。
(4)某些行業(yè)對(duì)軟件開發(fā)的過程已有相關(guān)標(biāo)準(zhǔn)要求,這些標(biāo)準(zhǔn)規(guī)定了行業(yè)相關(guān)軟件工程化管理的內(nèi)容。對(duì)于這些行業(yè)來說,軟件產(chǎn)品的標(biāo)準(zhǔn)符合性檢查是軟件質(zhì)檢的必要工作。將這些標(biāo)準(zhǔn)與行業(yè)實(shí)際需求結(jié)合并系統(tǒng)化、流程化,通過軟件質(zhì)檢平臺(tái)提供規(guī)范化的軟件過程管理工具,指導(dǎo)相關(guān)行業(yè)的軟件企業(yè)的開發(fā)過程,確保其軟件過程的標(biāo)準(zhǔn)符合性。
2 平臺(tái)架構(gòu)及關(guān)鍵技術(shù)
公共服務(wù)平臺(tái)的整個(gè)框架[3-4]由物理資源、資源池、管理中間件、軟件即服務(wù)組成,如圖1所示。其中資源池將經(jīng)過虛擬化的測試資源、計(jì)算資源、存儲(chǔ)資源、管理資源和數(shù)據(jù)資源以基礎(chǔ)設(shè)施即服務(wù)的方式通過網(wǎng)絡(luò)提供給用戶使用和管理。為了能夠?qū)崿F(xiàn)高層次的資源管理邏輯,必須對(duì)資源進(jìn)行抽象,也就是對(duì)硬件資源進(jìn)行虛擬化。虛擬化的過程一方面需要屏蔽掉硬件產(chǎn)品上的差異,另一方面需要對(duì)每一種硬件資源提供統(tǒng)一的管理邏輯和接口。
管理中間件層包括用戶管理組件、任務(wù)管理組件、資源管理組件、安全管理組件等。資源管理主要包括資源部署、資源監(jiān)控、負(fù)載均衡、故障恢復(fù)等[5]。
用戶管理主要提供計(jì)費(fèi)管理,云計(jì)算倡導(dǎo)“按使用計(jì)費(fèi)”的模式。面向公眾提供服務(wù)的公共測試服務(wù)云,主要的計(jì)費(fèi)模式是依據(jù)某個(gè)時(shí)間段內(nèi)所使用的測試資源以及所消耗的存儲(chǔ)、網(wǎng)絡(luò)、內(nèi)存等資源向用戶收費(fèi)。
安全管理主要提供身份認(rèn)證、訪問授權(quán)、綜合防護(hù)和安全審計(jì)等功能。
最頂層為軟件即服務(wù)層,是整個(gè)公共服務(wù)平臺(tái)的一個(gè)門戶[6],對(duì)用戶開放測試申請(qǐng)功能以及面向行業(yè)領(lǐng)域的測試應(yīng)用;為行業(yè)解決方案提供商提供內(nèi)容管理功能,以供其管理或維護(hù)其貨架上的測試資源。
關(guān)鍵技術(shù)包括支撐測試云建設(shè)的桌面虛擬化技術(shù)、桌面顯示協(xié)議技術(shù)、基于視頻壓縮的遠(yuǎn)程顯示核心技術(shù)。
(1)支撐測試云建設(shè)的桌面虛擬化技術(shù)
基于VDI的虛擬桌面解決方案[7]是在服務(wù)器側(cè)為每個(gè)用戶準(zhǔn)備其專用的虛擬機(jī)并在其中部署用戶所需的操作系統(tǒng)和各種應(yīng)用,然后通過桌面顯示協(xié)議將完整的虛擬機(jī)桌面交付給遠(yuǎn)程的用戶,其實(shí)現(xiàn)基礎(chǔ)是服務(wù)器虛擬化。服務(wù)器虛擬化主要有完全虛擬化和部分虛擬化兩種方法:完全虛擬化能夠?yàn)樘摂M機(jī)中的操作系統(tǒng)提供一個(gè)與物理硬件完全相同的虛擬硬件環(huán)境;部分虛擬化則需要在修改操作系統(tǒng)后再將其部署到虛擬機(jī)中。基于VDI的虛擬桌面解決方案通常采用完全虛擬化技術(shù)構(gòu)建用戶專屬的虛擬機(jī),并在其上部署桌面版Windows、Linux用于提供服務(wù)。
采用基于VDI的解決方案,用戶能夠獲得一個(gè)完整的桌面操作系統(tǒng)環(huán)境,與傳統(tǒng)的本地計(jì)算機(jī)的使用體驗(yàn)十分接近。用戶虛擬桌面能夠?qū)崿F(xiàn)性能與安全的隔離,并擁有服務(wù)器虛擬化技術(shù)帶來的其他優(yōu)勢,服務(wù)質(zhì)量可以得到保障。
(2)桌面顯示協(xié)議
桌面顯示協(xié)議是影響虛擬桌面用戶體驗(yàn)的關(guān)鍵,當(dāng)前主流的顯示協(xié)議包括PCoIP、RDP、SPICE、ICA等,并被不同的廠商所支持。
傳輸帶寬要求的高低直接影響了遠(yuǎn)程服務(wù)訪問的流暢性。桌面顯示協(xié)議采用具有極高處理性能和數(shù)據(jù)壓縮比的壓縮算法,極大地降低了對(duì)網(wǎng)絡(luò)帶寬的需求。圖像展示體驗(yàn)反映了虛擬桌面視圖的圖像數(shù)據(jù)的組織形式和傳輸順序。其中PCoIP采用分層漸進(jìn)的方式在用戶側(cè)顯示桌面圖像,即首先傳送給用戶一個(gè)完整但是比較模糊的圖像,在此基礎(chǔ)上逐步精化,相比其他廠商采用的分行掃描等方式,具有更好的視覺體驗(yàn)。虛擬桌面視圖內(nèi)容以圖片方式進(jìn)行傳輸,所以視頻播放時(shí)的每一幀畫面在解碼后都將轉(zhuǎn)為圖片從而導(dǎo)致數(shù)據(jù)量的劇增。為了避免網(wǎng)絡(luò)擁塞,可以獲取用戶側(cè)設(shè)備的處理能力,自適應(yīng)地將視頻解碼工作放在用戶側(cè)進(jìn)行。
(3)基于視頻壓縮的遠(yuǎn)程顯示核心技術(shù)[8]
服務(wù)端使用視頻編碼技術(shù)把桌面圖像信息進(jìn)行視頻壓縮處理,極大地減少了網(wǎng)絡(luò)帶寬,實(shí)時(shí)地將桌面圖像信息傳輸?shù)竭h(yuǎn)程終端;終端使用帶有視頻解碼的嵌入式處理器實(shí)現(xiàn)桌面圖像信息的實(shí)時(shí)、快速及高效解碼;終端的鍵盤、鼠標(biāo)、U盤等USB設(shè)備,采用輸入輸出重定向虛擬映射技術(shù)可以映射到服務(wù)端。
3 結(jié)論
本文分析了聚合國內(nèi)軟件質(zhì)檢機(jī)構(gòu)測試資源面臨的問題,并給出了一種基于云計(jì)算的軟件測試公共服務(wù)平臺(tái)設(shè)計(jì)方案,通過測試云服務(wù)等方式以統(tǒng)一的平臺(tái)接口推動(dòng)國內(nèi)軟件質(zhì)檢資源共享,提供不同行業(yè)的軟件質(zhì)檢方案,規(guī)范相應(yīng)軟件質(zhì)檢標(biāo)準(zhǔn)和流程,全面提升國內(nèi)軟件質(zhì)檢水平。借助于云計(jì)算技術(shù)的按需服務(wù)和計(jì)費(fèi)的模式,大大降低軟件企業(yè)在軟件質(zhì)檢方面以及質(zhì)檢機(jī)構(gòu)的運(yùn)營成本;另外也從根本上解決了政府重復(fù)投入、檢測資源浪費(fèi)的問題。本文的平臺(tái)設(shè)計(jì)方案已在某國家級(jí)軟件產(chǎn)品質(zhì)量監(jiān)督檢驗(yàn)中心的測試云平臺(tái)建設(shè)中得到成功應(yīng)用,取得了良好的效果。下一階段的工作重點(diǎn)將面向各行業(yè)領(lǐng)域測試解決方案的構(gòu)建。
參考文獻(xiàn)
[1] 王偉軍,姜毅,劉蕤,等。云計(jì)算環(huán)境下軟件測試研究進(jìn)展[J]。現(xiàn)代圖書情報(bào)技術(shù),2012(11):3-9.
[2] 陳鐵南,唐震,王曉冉。基于云計(jì)算的大規(guī)模性能測試服務(wù)平臺(tái)[J]。計(jì)算機(jī)科學(xué),2014,41(9):63-66.
[3] 李志剛,馮亞娜。云計(jì)算虛擬環(huán)境下第三方軟件測試環(huán)境研究[J]。信息技術(shù),2013(8):183-185.
[4] 楊本生,袁祥夢,黃曉光。基于云計(jì)算的軟件測試系統(tǒng)框架研究[J]。計(jì)算機(jī)測量與控制,2014,22(6):1683-1686.
[5] 余鳳,徐曉鐘,李建軍。基于云計(jì)算IaaS產(chǎn)品測試技術(shù)的研究[J]。電視技術(shù),2014,38(15):272-276.
[6] 王奇,曹良帥,趙賢敬,等。基于SaaS的自動(dòng)化測試云平臺(tái)研究[J]。電信工程技術(shù)與標(biāo)準(zhǔn)化,2012(10):67-71.
[7] 陳鐵南,唐震,王曉冉。基于虛擬桌面架構(gòu)的實(shí)驗(yàn)機(jī)房環(huán)境構(gòu)建[J]。沈陽師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,32(3):401-404.
[8] 張鵬。虛擬桌面壓縮技術(shù)進(jìn)展[J]。電腦知識(shí)與技術(shù),2013,9(34):7788-7791.
編輯:jq
-
云計(jì)算
+關(guān)注
關(guān)注
39文章
7735瀏覽量
137205 -
軟件測試
+關(guān)注
關(guān)注
2文章
228瀏覽量
18570
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論