虛擬化技術在軟件測試的應用

發表于:2012-08-08來源:msdn作者:cheno點擊數: 標簽:虛擬化技術
1)什么是虛擬化 虛擬化技術很早就提出來了,但是真正走向市場是從2005年以后,那時候AMD和Intel公司都開始推出支持虛擬化技術的CPU。簡單的說,虛擬機就像一個軟件容器,可以安裝操作系統和應用軟件,像一臺物理機一樣運行,其有如下特點。 操

  1)什么是虛擬化

  虛擬化技術很早就提出來了,但是真正走向市場是從2005年以后,那時候AMD和Intel公司都開始推出支持虛擬化技術的CPU。簡單的說,虛擬機就像一個軟件容器,可以安裝操作系統和應用軟件,像一臺物理機一樣運行,其有如下特點。

  操作系統和軟件無法辨別其主機是否是虛擬機。

  多臺虛擬機器像應用程序一樣可以運行在主機上

  2) 虛擬化技術的優勢

  2.1) 提高硬件的利用率

  根據調查數據,通常測試實驗室的硬件的使用率是很低的,平均只有10%,通過虛擬化技術可以使利用率提高到80%。

diagram_datacenterexpense

  * IDC 的數據中心趨勢調查,2007 年。

  2.2) 低碳生活

  降低數據中心的成本(省電/空間),能源成本降低 80%。大部分機器5-15%時間處于使用狀態,而空閑狀態耗電量為滿負荷60%以上。

  2.3) 高管理性

  通過虛擬化技術,計算機的管理(虛擬機)的管理變得更加簡單,創建、修改一個計算機的操作可以瞬間內完成。這種高管理型有助于推動基礎設施服務化(Infrastructure as Service)的發展。目前,有很多云計算的基礎設施都是大規模使用了虛擬技術。

SaaS%20PaaS%20and%20IaaS_2

  大家可能對SaaS都比較熟悉,這里我解釋一下IaaS和PaaS。

  基礎設施作為服務(IaaS):計算機資源通過服務的方式提供出來,包括處理能力,存儲和網絡能力等等。

  平臺作為服務(PaaS):平臺和工具能通過平臺或API方式提供出來,提供更加高層次服務,例如數據庫存儲服務,J2EE服務,.NET平臺等。

  3. 虛擬化給軟件測試帶來的好處

  通過虛擬化技術,軟件測試可以獲得很多好處,以下就是一些例子;

  3.1)測試實驗室(Test Lab)的建立

  空間

  時間

  電力

image

  如圖所示的一個例子:168 臺式機,被12個服務器主機代替。省空間,省電,方便管理,大大降低了測試實驗室建設的成本。

  大部分的測試環境對測試機器的性能要求都不是很高(性能測試除外),那么對于這種情況,虛擬機是非常適合的解決方案。虛擬機可以用于測試實驗室(Test Lab)的構建,支持自動化測試,也可以為遠程的測試和開發人員提供機器服務。

  舉例來說,一個網站的測試,需要10個手工測試人員進行,那么我們可以創建10個虛擬計算機,那么只需要1-2個主機就行了,并且支持遠程工作,那么這些手工測試人員可以在家里進行工作。

  3.2) 軟件快速部署和連續集成

  虛擬機的管理是非常方便,這大大促進了快速部署(Fast Deployment)和連續集成(Continual Integration)。舉例來說,在連續集成的時候,往往需要大量機器,并且快速恢復到某個系統的初始狀態。虛擬化技術的高管理性能夠很好滿足這些需求,同時成本比物理機器要低很多。

  3.3)測試用例失敗后的調查

  在測試用例失敗后,通過保存機器狀態,可以方便問題的調查。如果使用物理機器,這些機器就需要被占用,一直到問題調查完畢。而且,調查的狀態具有不可恢復性。如果使用虛擬化技術,計算機狀態可以被保持到到文件;在需要調查問題時,隨時可以把虛擬機文件恢復到虛擬機進行調查;同時機器的狀態可以隨時保存,隨時恢復,這給一些不容易重現的問題提供了有利的調查方法。

  3.4)虛擬硬件的使用

  虛擬化不僅僅可以模擬軟件,也可以模擬硬件,包括網卡,光驅,USB接口等等。特別是USB接口的虛擬化,使得在很多USB設備驅動的測試提供了便利。另外一個例子是虛擬光驅,Vista開發出來后,安裝以前的方法要制作DVD光盤來進行最后的驗證。按照傳統的做法,需要180張DVD光盤,需要花2個星期。而使用虛擬化解決方案,制作ISO 映像,只需要2天時間。

image

  4 虛擬化過程中一些好的實踐

  4.1 仔細設計網絡拓撲結構

  對于一些對網絡特別要求的實驗室,需要仔細設計網絡Top結構,特別是IP地址的數量

  4.2 選購主機,注意擴展性

  主機的選購需要考慮內存的擴展能力,內存大小很容易成為增加虛擬機的一個瓶頸。當機器映像很多的時候,磁盤空間也容易出現緊張。網絡速度也是需要考慮。

  4.3) 仔細考慮一些特殊需求的測試

  a) USB/驅動 b) 3D效果 c)能源管理 d)性能測試結果的分析應該考慮到虛擬的使用的范圍和局限性。

  4.4) 自動保持閑置的虛擬機

  實驗室中有長期不用的虛擬機,可以定時自動保存起來,需要時以后可以再恢復。這樣可以提高系統的效率,降低能耗。保存和恢復機器都是需要時間的,其性能和網絡的存儲位置有很大關系。

  總結,虛擬化作為一個重要的技術,不僅僅可以節省成本,而且可以幫助我們保護藍天,何樂而不為呢?

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97