云測試是一種利用云優勢的測試方法,主要用來降低測試所耗時間或者模擬應用的真實流量。此外,為了滿足高流量web應用的擴展需求,測試需要具有擴展性。

  Matt Heusser提到,過去非常流行測試實驗室,占用了許多空間和各種機器。

  實驗室面積數百平方英尺,包含5-20臺計算機。每一臺計算機配置不同組合的系統軟件。我們不得不安裝、測試,然后可能為了下一次測試而重裝機器。

  如今情況大有不同。在類似VMware Fusion的工具的幫助下,我們可以在同一臺機器上運行不同的軟件配置。同樣,在同一臺物理設備上也可以運行若干服務器的實例。因此,創建測試環境像輸入一行命令那樣簡單。為了減少測試執行的時間,Matt建議使用分布式計算方法。

  想象一下,把測試集合劃分成十幾個(或者一百個)測試,分配到15臺計算機上,每臺計算機執行一個測試,反饋結果,然后執行下一個。如果使用虛擬化工具,可以從云托管提供商以極低的價格租用處理器時間和空間。一次測試周期花費的時間只取決于慢的那個測試。

  憑借例如模式驅動自動化測試的方法,我們可以在很短時間內并發執行各種測試場景。

  Jim Ensell認為云對敏捷開發產生了積極的影響。據Jim介紹,

  開發人員和QA經理會經常希望利用云資源來多平臺測試、并發運行單元測試和功能測試、有效地執行負載測試。這些測試特別適合公共云,因為它們會大規模使用云資源,并且隨著時間推移有不同的需求變化。而且,云資源的定價模式也非常適合。

  Devcentral提到如今Web應用的擴展性需要通過類似擴展的測試環境來測試。感謝云資源,公司可以避免耗費成本來搭建測試基礎設施。

  自動化的應用互聯網擴展也可以采取同樣的方式,以較低的成本用于互聯網擴展測試解決方案。因此,你所需的只是一個能夠部署在云中的負載生成客戶端,一些云計算環境,和一種控制這些分布式客戶端的方法,通過這種方式可以生成必要的擴展負載讓應用和基礎設施達到極限。

  但是,云測試存在一些潛在問題。

  比如,測試人員可能會像開發團隊一樣提問:“如果云出現故障了怎么辦?”其他重要的問題還包括備份策略、修復策略和從測試數據丟失中恢復的機制。

  盡管有一些問題,云提供了測試的強大平臺。關鍵元素在于定義需求,并找到辦法以較低的成本有效地利用巨大的資源。