荀江萍
摘 要:隨著云計算的普及,IT行業也迎來了一個新的時代。而在軟件測試方面,也誕生了一種全新的基于云計算平臺的軟件測試方法。本文主要介紹一下在云計算環境下,軟件測試的相關發展情況,旨在讓人們更加了解云計算軟件測試。
關鍵詞:云計算;軟件測試;測試策略
1 云計算軟件測試相關知識
1.1 云計算軟件測試的概念
從廣義來說,云計算就是一種服務的交付和使用模式,是通過網絡以按需、易擴展的方式獲得所需的服務。而云計算軟件測試是由云計算和測試兩方面組成,它是一種基于云計算的新型測試方案,它有自己的測試方法、過程、手段,與傳統測試相比,有較大的差異。
1.2 云計算軟件測試的特點
⑴前期準備工作。傳統軟件測試需要購買各種測試基礎設施,如服務器硬件、網絡設備、系統軟件和測試軟件等等;對進行測試的人員需要投入較多的時間和資源進行專業技能培訓,一般都是一次性消費,而且在初期的投入都比較大。而云計算軟件測試則是通過云計算平臺提供測試基礎設施服務,用戶無需自行購買,且在購買時是按需購買,可以根據測試項目的規模、測試目標、測試時間等分步付費;對于測試人員,一般由云計算服務提供商配置專業的測試人員,如果需要特殊領域的專業知識的測試還可用眾包等方式實現。
⑵測試環境部署。云計算軟件測試可以通過云計算平臺自動分配和部署測試環境,動態智能分配測試環境,方便快捷。
⑶測試過程以及測試代碼和數據管理。云計算軟件測試是集中管理模式,采用完整的項目過程管理,并保證各個軟件的質量。在軟件代碼與數據管理方面,傳統軟件測試是由軟件開發商內部管理,獨用企業內部各項基礎設施,安全機制比較一般;而云計算軟件測試是共享的公共云平臺,由軟件開發商、云服務提供商等多方參與,安全機制比價復雜。
⑷商業擴展。云計算軟件測試用到的資源都存儲在云計算平臺中,查找方便,可擴展性比較強。
2 云計算軟件測試的研究范圍和分類
2.1 云計算軟件測試的研究范圍
云計算軟件測試的研究范圍主要分為三個方面:第一個方面,云計算平臺自身的測試,也就是對構建云計算基礎設施服務能力的測試,這方面主要體現在對云平臺IaaS層的測試研究。第二個方面主要是研究軟件開發商利用云計算平臺提供的相關資源進行各種測試活動。這個方面主要是對云測試技術、云平臺自動測試工具和測試項目管理技術等方面難題。第三個方面主要是對TaaS相關問題的研究。TaaS是軟件測試行業新興的一種服務模式,其主要是支持面向需求的軟件測試服務市場可以按需獲得軟件測試的服務。它也是現行云計算軟件測試中最大的難題,它涉及到云計算、軟件測試、服務外包等多個領域,是一門綜合的且比較復雜的學科。
2.2 云計算軟件測試的分類
⑴按測試任務可分為:壓力測試、負載測試、性能測試、功能測試、兼容性測試、瀏覽器性能測試、延遲測試和安全測試。
⑵按測試用戶角色可分為:①云中測試:這部分主要是云供應商進行測試,主要是對云中SaaS功能和一些保證云正常運行功能的質量測試。②云外測試:這部分主要是從外部對云計算指定的功能和服務就行質量測試,這個測試涉及云供應商,SaaS供應商和最終用戶。③云上測試:這類測試主要針對云的應用系統供應商,其是通過云平臺測試部署在云端的服務應用。
3 云計算平臺的測試策略
云計算平臺是由上萬臺計算機組成的,所以在使用云計算測試方法策略方面,要區分于傳統系統的測試方法,要根據云平臺的特點,合理的定制測試策略。一般在云計算平臺下進行軟件測試需要注意以下幾個方面。
3.1 測試人員的基本素質
云計算平臺是一個龐大的系統,測試人員必須同時具備了解云計算平臺和相關業務知識的雙重保證。這就要求測試人員不僅要了解云平臺的運行機制,而且還需要掌握在云平臺運行的相關業務流程,否則就無法很好的完成整個測試流程。
3.2 減少測試對生產環境帶來的風險
云計算平臺畢竟是一個測試系統,它的組成龐大而又復雜,所以我們沒能力也不可能專門復制一個系統用于測試,所以只能利用現有的工作環境進行測試,在工作環境下進行測試相對而言就會產生一些風險。這就要求測試人員在保證測試的準確性下,應該把這種風險降低到最低,具體可以通過建立恢復機制,選擇休息日、避開工作量大的時候登手段來實現。
3.3 云計算平臺的性能
云計算的性能測試是一個需要特別關注的方面,它是驗證云計算在各種負載情況下的服務性能。并且通過不同的測試場景和測試用例,來模擬云計算的極限測試和壓力測試。另外一個需要注意的就是運行效率方面,由于云計算平臺服務器會根據用戶的需要不斷進行整合和分割,這些都會消耗云計算平臺的運行效率。所以在系統進行部署時,虛擬機的效率和性能也會相對的收到影響,這就要要求測試人員能設計出合適的測試場景和腳本,以供測試順利有效的進行。
3.4 適當進行評估,評測相結合
在進行云計算安全性測試時,要本著系統評估和測試相結合的原則。通過云計算模型得到云計算的安全模型,在此模型下對云計算系統的安全可靠性進行評估。然后再通過測試數據等相關數據,結合其他的測試結果,得出對云計算系統安全可靠性的評價。
[參考文獻]
[1]Sun Microsystems.云計算架構介紹白皮書.2009.06.
[2]李喬,鄭嘯.云計算研究現狀綜述[J].計算機科學,2011,38(4):32-37.