《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 基于云計算的測試公共服務(wù)平臺設(shè)計技術(shù)
基于云計算的測試公共服務(wù)平臺設(shè)計技術(shù)
2015年微型機與應(yīng)用第4期
周顯明1,李建軍1,王莉華2,朱能杰3
(1.華東計算技術(shù)研究所,上海 200233; 2.上海港灣工程質(zhì)量檢測有限公司,上海 200032; 3.深圳市盛邦通信有限公司,深圳 518034)
摘要: 分析了國內(nèi)軟件質(zhì)檢行業(yè)資源聚合面臨的問題,提出了采用云計算技術(shù)聚合各軟件質(zhì)檢機構(gòu)資源的方案,設(shè)計并實現(xiàn)了基于云計算技術(shù)的公共測試服務(wù)平臺,該平臺通過測試云服務(wù)方式以統(tǒng)一的接口推動國內(nèi)軟件質(zhì)檢資源共享,并為軟件質(zhì)檢機構(gòu)提供了一種新的業(yè)務(wù)模式。
Abstract:
Key words :

  摘  要: 分析了國內(nèi)軟件質(zhì)檢行業(yè)資源聚合面臨的問題,提出了采用云計算技術(shù)聚合各軟件質(zhì)檢機構(gòu)資源的方案,設(shè)計并實現(xiàn)了基于云計算技術(shù)的公共測試服務(wù)平臺,該平臺通過測試云服務(wù)方式以統(tǒng)一的接口推動國內(nèi)軟件質(zhì)檢資源共享,并為軟件質(zhì)檢機構(gòu)提供了一種新的業(yè)務(wù)模式。

  關(guān)鍵詞軟件測試公共服務(wù)平臺;軟件質(zhì)檢資源聚合軟件測試云;云計算

0 引言

  近十多年來,國家成立了多家軟件產(chǎn)品質(zhì)量監(jiān)督檢驗中心,并投資興建了大量的軟件工程化管理和測試驗證環(huán)境。這些基礎(chǔ)設(shè)施和測試環(huán)境為國家的重點領(lǐng)域工程質(zhì)量監(jiān)督檢驗起到了重要的作用,但也存在一定的問題:各家質(zhì)檢機構(gòu)地理位置分散、資源無法共享使用,資源規(guī)模建設(shè)不平衡、資源重復(fù)性建設(shè)、資源建設(shè)后閑置未用、大部分資源只能在實驗室使用等,這些問題直接導(dǎo)致了軟件產(chǎn)品質(zhì)檢資源的應(yīng)用水平普遍較低,重點領(lǐng)域和新技術(shù)領(lǐng)域的檢測能力不足。如何將這些軟件質(zhì)檢資源在保障國家重點型號工程建設(shè)的同時,面向我國各行業(yè)領(lǐng)域企業(yè)提供便捷的質(zhì)檢服務(wù),多層次化地提供質(zhì)量保證服務(wù),是一項意義重大的工作,這其中面臨著如何有效整合利用這些資源的難題。國外學(xué)術(shù)界和產(chǎn)業(yè)界已經(jīng)有不少研究人員對云計算環(huán)境下的軟件測試問題開展了相關(guān)研究,相對而言,國內(nèi)這方面的研究還處于起步階段[1]。

  云計算技術(shù)的不斷完善,推動軟件開發(fā)技術(shù)和應(yīng)用模式正在向以用戶為中心轉(zhuǎn)變。云計算是軟件服務(wù)化的模式,可以按照用戶需要動態(tài)地提供計算、存儲、應(yīng)用等各類資源,具有可動態(tài)的伸縮性、使用成本比較低、可管理性好、節(jié)約能耗、安全便捷等優(yōu)點,解決了資源難以整合使用的難題。

  為此,本文分析了軟件質(zhì)檢資源聚合技術(shù),設(shè)計并實現(xiàn)了基于云計算的測試公共服務(wù)平臺,最終為整合利用分散的測試資源提供了相應(yīng)的手段。

  1 平臺的主要功能

  1.1 軟件質(zhì)檢資源聚合服務(wù)

  軟件質(zhì)檢資源主要包括硬件基礎(chǔ)設(shè)施和軟件質(zhì)檢工具兩個方面。目前,國內(nèi)軟件質(zhì)檢機構(gòu)均具有一定規(guī)模的硬件基礎(chǔ)設(shè)施和軟件質(zhì)檢工具,但由于地域限制、職責(zé)劃分等方面的原因,未能得到高效的應(yīng)用。通過統(tǒng)一的平臺接口、結(jié)合目前業(yè)內(nèi)新興的云計算技術(shù),可以在一定程度上聚合閑置資源,提高其利用率。

  1.1.1 基礎(chǔ)設(shè)施

  采用云計算技術(shù)整合國內(nèi)軟件質(zhì)檢機構(gòu)的硬件基礎(chǔ)設(shè)施資源,對分散在各地的國內(nèi)軟件質(zhì)檢機構(gòu)的硬件資源進行統(tǒng)一的管控,構(gòu)建測試云平臺的基礎(chǔ)設(shè)施層,具體包括主機、存儲、網(wǎng)絡(luò)、其他硬件資源等。

  通過統(tǒng)一的軟件質(zhì)檢平臺接口,根據(jù)用戶需求提供基礎(chǔ)設(shè)施服務(wù),用戶能夠通過租用的方式訪問并使用大量的基礎(chǔ)設(shè)施資源,可為用戶提供大規(guī)?;虺笠?guī)模的性能驗證能力[2]。用戶在軟件質(zhì)檢平臺下使用這些基礎(chǔ)設(shè)施資源,不需要關(guān)心硬件設(shè)施的物理位置,只需要按測試時間支付資源使用費用,用戶能夠以高性價比的方式獲得計算資源,無需投入大型的專用測評實驗室的建設(shè)。

  在此基礎(chǔ)設(shè)施層之上,根據(jù)行業(yè)發(fā)展需要,軟件質(zhì)檢平臺可以定制提供不同的大型平臺應(yīng)用服務(wù)解決方案,供用戶靈活選擇使用,如移動、電信等平臺的大規(guī)模移動應(yīng)用計算服務(wù)。

  1.1.2 質(zhì)檢工具資源

  軟件質(zhì)檢平臺采用云計算技術(shù),建立統(tǒng)一的測試工具資源池,通過虛擬化技術(shù),將各種測試資源按照行業(yè)領(lǐng)域等進行合理的配置,形成符合行業(yè)軟件質(zhì)量檢驗標準的資源模板。為用戶提供“一站式服務(wù)”門戶,用戶需要時通過申請即可使用,使用完成后,系統(tǒng)自動回收資源,放入測試工具資源池。綜合分析質(zhì)檢工具資源的使用方式主要包括以下幾類:

 ?。?)單機運行的軟件。對于可單機運行的軟件,通過虛擬化技術(shù),將其移植到云計算應(yīng)用平臺上,通過統(tǒng)一的平臺向軟件企業(yè)或相關(guān)質(zhì)檢機構(gòu)提供遠程質(zhì)檢服務(wù)。

  (2)分布式應(yīng)用軟件。對于需要超大規(guī)模并發(fā)用戶數(shù)的質(zhì)檢服務(wù)需求,單個質(zhì)檢機構(gòu)無法單獨完成,通過平臺進行管理調(diào)度,聚合多家監(jiān)測機構(gòu)現(xiàn)有的資源,發(fā)布統(tǒng)一的檢驗?zāi)_本,協(xié)作完成質(zhì)檢業(yè)務(wù),同時平臺匯總質(zhì)檢結(jié)果數(shù)據(jù)。

  (3)對資源占用率較高的質(zhì)檢工具。由于現(xiàn)有的虛擬化技術(shù)存在資源損耗,平臺通過視頻壓縮的遠程顯示技術(shù),以無損的形式將相關(guān)應(yīng)用提供給終端用戶。

  1.2 行業(yè)軟件質(zhì)檢解決方案

  經(jīng)過多年的實踐,各質(zhì)檢機構(gòu)在特定行業(yè)(如軌道交通、汽車電子、航空機載軟件等)的軟件產(chǎn)品的質(zhì)量監(jiān)督檢驗過程中積累了大量的經(jīng)驗,并對特定行業(yè)的相關(guān)軟件標準有了較深的理解,但是沒有形成一個針對行業(yè)領(lǐng)域軟件質(zhì)檢的完整解決方案。這就需要各質(zhì)檢機構(gòu)及行業(yè)領(lǐng)域相關(guān)組織共同研究分析,將這些經(jīng)驗和理解知識化、系統(tǒng)化,使之形成特定行業(yè)的軟件質(zhì)量監(jiān)督檢驗解決方案,并通過軟件質(zhì)檢平臺對外提供服務(wù),具體包括如下內(nèi)容:

 ?。?)通過軟件質(zhì)檢平臺聯(lián)合特定行業(yè)的龍頭企業(yè),以聯(lián)合實驗室、技術(shù)中心等不同形式發(fā)布有針對性的軟件質(zhì)量監(jiān)督檢驗整體解決方案,幫助企業(yè)增強創(chuàng)新能力,形成具有自主知識產(chǎn)權(quán)的技術(shù)和產(chǎn)品;推動產(chǎn)學(xué)研聯(lián)合,促進技術(shù)成果轉(zhuǎn)化、適用技術(shù)推廣和創(chuàng)新資源共享;培育示范試點工程,建設(shè)不同領(lǐng)域軟件質(zhì)量監(jiān)督檢驗推廣示范中心,輻射全國,帶動全行業(yè)、全領(lǐng)域的軟件質(zhì)量提升。

 ?。?)以行業(yè)領(lǐng)域為背景,將各質(zhì)檢機構(gòu)成功的測試案例進行分類整理,構(gòu)建對應(yīng)的軟件質(zhì)檢知識庫(包括測試用例庫、產(chǎn)品缺陷庫、質(zhì)檢工具應(yīng)用方案等),并使用語義和數(shù)據(jù)挖掘技術(shù)對這些信息資源進行處理,用戶可通過軟件質(zhì)檢平臺快捷地獲取相關(guān)領(lǐng)域的質(zhì)檢方案。

 ?。?)軟件質(zhì)檢平臺可以記錄行業(yè)軟件質(zhì)檢過程和結(jié)果,不斷豐富知識管理的各個信息庫,并獲得更精確的質(zhì)量數(shù)據(jù)。

 ?。?)某些行業(yè)對軟件開發(fā)的過程已有相關(guān)標準要求,這些標準規(guī)定了行業(yè)相關(guān)軟件工程化管理的內(nèi)容。對于這些行業(yè)來說,軟件產(chǎn)品的標準符合性檢查是軟件質(zhì)檢的必要工作。將這些標準與行業(yè)實際需求結(jié)合并系統(tǒng)化、流程化,通過軟件質(zhì)檢平臺提供規(guī)范化的軟件過程管理工具,指導(dǎo)相關(guān)行業(yè)的軟件企業(yè)的開發(fā)過程,確保其軟件過程的標準符合性。

2 平臺架構(gòu)及關(guān)鍵技術(shù)

  公共服務(wù)平臺的整個框架[3-4]由物理資源、資源池、管理中間件、軟件即服務(wù)組成,如圖1所示。其中資源池將經(jīng)過虛擬化的測試資源、計算資源、存儲資源、管理資源和數(shù)據(jù)資源以基礎(chǔ)設(shè)施即服務(wù)的方式通過網(wǎng)絡(luò)提供給用戶使用和管理。為了能夠?qū)崿F(xiàn)高層次的資源管理邏輯,必須對資源進行抽象,也就是對硬件資源進行虛擬化。虛擬化的過程一方面需要屏蔽掉硬件產(chǎn)品上的差異,另一方面需要對每一種硬件資源提供統(tǒng)一的管理邏輯和接口。

  管理中間件層包括用戶管理組件、任務(wù)管理組件、資源管理組件、安全管理組件等。資源管理主要包括資源部署、資源監(jiān)控、負載均衡、故障恢復(fù)等[5]。

  用戶管理主要提供計費管理,云計算倡導(dǎo)“按使用計費”的模式。面向公眾提供服務(wù)的公共測試服務(wù)云,主要的計費模式是依據(jù)某個時間段內(nèi)所使用的測試資源以及所消耗的存儲、網(wǎng)絡(luò)、內(nèi)存等資源向用戶收費。

  安全管理主要提供身份認證、訪問授權(quán)、綜合防護和安全審計等功能。

  最頂層為軟件即服務(wù)層,是整個公共服務(wù)平臺的一個門戶[6],對用戶開放測試申請功能以及面向行業(yè)領(lǐng)域的測試應(yīng)用;為行業(yè)解決方案提供商提供內(nèi)容管理功能,以供其管理或維護其貨架上的測試資源。

001.jpg

  關(guān)鍵技術(shù)包括支撐測試云建設(shè)的桌面虛擬化技術(shù)、桌面顯示協(xié)議技術(shù)、基于視頻壓縮的遠程顯示核心技術(shù)。

 ?。?)支撐測試云建設(shè)的桌面虛擬化技術(shù)

  基于VDI的虛擬桌面解決方案[7]是在服務(wù)器側(cè)為每個用戶準備其專用的虛擬機并在其中部署用戶所需的操作系統(tǒng)和各種應(yīng)用,然后通過桌面顯示協(xié)議將完整的虛擬機桌面交付給遠程的用戶,其實現(xiàn)基礎(chǔ)是服務(wù)器虛擬化。服務(wù)器虛擬化主要有完全虛擬化和部分虛擬化兩種方法:完全虛擬化能夠為虛擬機中的操作系統(tǒng)提供一個與物理硬件完全相同的虛擬硬件環(huán)境;部分虛擬化則需要在修改操作系統(tǒng)后再將其部署到虛擬機中?;赩DI的虛擬桌面解決方案通常采用完全虛擬化技術(shù)構(gòu)建用戶專屬的虛擬機,并在其上部署桌面版Windows、Linux用于提供服務(wù)。

  采用基于VDI的解決方案,用戶能夠獲得一個完整的桌面操作系統(tǒng)環(huán)境,與傳統(tǒng)的本地計算機的使用體驗十分接近。用戶虛擬桌面能夠?qū)崿F(xiàn)性能與安全的隔離,并擁有服務(wù)器虛擬化技術(shù)帶來的其他優(yōu)勢,服務(wù)質(zhì)量可以得到保障。

  (2)桌面顯示協(xié)議

  桌面顯示協(xié)議是影響虛擬桌面用戶體驗的關(guān)鍵,當(dāng)前主流的顯示協(xié)議包括PCoIP、RDP、SPICE、ICA等,并被不同的廠商所支持。

  傳輸帶寬要求的高低直接影響了遠程服務(wù)訪問的流暢性。桌面顯示協(xié)議采用具有極高處理性能和數(shù)據(jù)壓縮比的壓縮算法,極大地降低了對網(wǎng)絡(luò)帶寬的需求。圖像展示體驗反映了虛擬桌面視圖的圖像數(shù)據(jù)的組織形式和傳輸順序。其中PCoIP采用分層漸進的方式在用戶側(cè)顯示桌面圖像,即首先傳送給用戶一個完整但是比較模糊的圖像,在此基礎(chǔ)上逐步精化,相比其他廠商采用的分行掃描等方式,具有更好的視覺體驗。虛擬桌面視圖內(nèi)容以圖片方式進行傳輸,所以視頻播放時的每一幀畫面在解碼后都將轉(zhuǎn)為圖片從而導(dǎo)致數(shù)據(jù)量的劇增。為了避免網(wǎng)絡(luò)擁塞,可以獲取用戶側(cè)設(shè)備的處理能力,自適應(yīng)地將視頻解碼工作放在用戶側(cè)進行。

 ?。?)基于視頻壓縮的遠程顯示核心技術(shù)[8]

  服務(wù)端使用視頻編碼技術(shù)把桌面圖像信息進行視頻壓縮處理,極大地減少了網(wǎng)絡(luò)帶寬,實時地將桌面圖像信息傳輸?shù)竭h程終端;終端使用帶有視頻解碼的嵌入式處理器實現(xiàn)桌面圖像信息的實時、快速及高效解碼;終端的鍵盤、鼠標、U盤等USB設(shè)備,采用輸入輸出重定向虛擬映射技術(shù)可以映射到服務(wù)端。

3 結(jié)論

  本文分析了聚合國內(nèi)軟件質(zhì)檢機構(gòu)測試資源面臨的問題,并給出了一種基于云計算的軟件測試公共服務(wù)平臺設(shè)計方案,通過測試云服務(wù)等方式以統(tǒng)一的平臺接口推動國內(nèi)軟件質(zhì)檢資源共享,提供不同行業(yè)的軟件質(zhì)檢方案,規(guī)范相應(yīng)軟件質(zhì)檢標準和流程,全面提升國內(nèi)軟件質(zhì)檢水平。借助于云計算技術(shù)的按需服務(wù)和計費的模式,大大降低軟件企業(yè)在軟件質(zhì)檢方面以及質(zhì)檢機構(gòu)的運營成本;另外也從根本上解決了政府重復(fù)投入、檢測資源浪費的問題。本文的平臺設(shè)計方案已在某國家級軟件產(chǎn)品質(zhì)量監(jiān)督檢驗中心的測試云平臺建設(shè)中得到成功應(yīng)用,取得了良好的效果。下一階段的工作重點將面向各行業(yè)領(lǐng)域測試解決方案的構(gòu)建。

參考文獻

  [1] 王偉軍,姜毅,劉蕤,等.云計算環(huán)境下軟件測試研究進展[J].現(xiàn)代圖書情報技術(shù),2012(11):3-9.

  [2] 陳鐵南,唐震,王曉冉.基于云計算的大規(guī)模性能測試服務(wù)平臺[J].計算機科學(xué),2014,41(9):63-66.

  [3] 李志剛,馮亞娜.云計算虛擬環(huán)境下第三方軟件測試環(huán)境研究[J].信息技術(shù),2013(8):183-185.

  [4] 楊本生,袁祥夢,黃曉光.基于云計算的軟件測試系統(tǒng)框架研究[J].計算機測量與控制,2014,22(6):1683-1686.

  [5] 余鳳,徐曉鐘,李建軍.基于云計算IaaS產(chǎn)品測試技術(shù)的研究[J].電視技術(shù),2014,38(15):272-276.

  [6] 王奇,曹良帥,趙賢敬,等.基于SaaS的自動化測試云平臺研究[J].電信工程技術(shù)與標準化,2012(10):67-71.

  [7] 陳鐵南,唐震,王曉冉.基于虛擬桌面架構(gòu)的實驗機房環(huán)境構(gòu)建[J].沈陽師范大學(xué)學(xué)報(自然科學(xué)版),2014,32(3):401-404.

  [8] 張鵬.虛擬桌面壓縮技術(shù)進展[J].電腦知識與技術(shù),2013,9(34):7788-7791.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。