標籤:
之前,本組計劃用利用Monkey來進行測試,但經過我們測試團隊的學習,發現了更加適合本項目的測試方法——雲測試。
雲測試,是雲端式計算的一種新型測試方案。服務商提供多種平台,多種瀏覽器的平台。目前開放的自動化測試有四個方面:深度相容測試、安全性漏洞掃描、功能回放測試、深度遍曆測試。另外我們還使用了雲測試提供的真機測試。
其中,我們主要使用深度相容測試、安全性漏洞掃描功能。
由我們可以看到,在深度相容測試中,我們用到的雲測試也是採用的monkey測試載入器,但是其好處在於功能的整合化以及資料的全面性。
我們之所以使用雲測試,是因為其具有以下特點:
- 立即可用性
雲測試提供一整套測試環境,測試人員利用虛擬桌面等手段登入到該測試環境,就可以立即展開測試。這將軟硬體安裝、環境配置、環境維護的代價轉移給雲測試提供者(公用雲的經營者或私人雲端的維護團隊)。以現在的虛擬化技術,在測試人員指定硬體設定、軟體棧(作業系統、中介軟體、工具軟體)、網路拓撲後,建立一套新的測試環境只需幾個小時。如果測試人員可以接受已建立好的標準測試環境,那麼他可以立即登入。
2. 裝配完備性
雲測試不但可以提供完整的測試環境,還可以提供許多附加服務。對於測試機,它可以提供還原點,以便測試人員將虛擬機器重設到指定狀態。對於測試執行,它可以監控被測試程式的一舉一動,例如註冊表訪問、硬碟檔案讀寫、網路訪問、系統日誌寫入、系統資源佔用率、記憶體映像序列化、螢幕錄影等。將這些資訊與測試案例一起展現出來,可以協助測試人員發現問題,定位錯誤。對於大規模的測試,雲測試可以提供多台測試客戶機,他們從主控機上下載測試案例,執行並彙報測試結果,主控機將結果匯總後報告給測試人員。實際上,這些功能已經被各種工具所實現,雲測試平台的任務是整合它們,提供統一、完備的功能。這樣,測試人員就可以將精力最大限度地投入到專屬的測試領域中,而不是與各種工具搏鬥。
3. 專家服務
最進階的測試服務是提供專業知識的服務。這些知識可以通過測試案例、測試資料、自動化的測試服務等形式提供。例如,許多應用需要讀取檔案,雲測試可以提供針對檔案讀取的模糊測試。測試人員將被測試的應用程式提交給雲,雲將其部署到多台測試機上。在每一台測試上,應用程式要讀取海量的檔案,每一個檔案都是特意構造的攻擊檔案。一旦棧溢出、堆溢出等問題被發現,立即儲存應用程式的記憶體映像。一段時間後,測試人員將獲得雲測試返回的測試結果:一份詳細的分析報告和一大堆記憶體映像檔案。
4. 節約成本
每個企業都在追求成本最低和利潤最大化。軟體測試作為研發生產過程的一部分也有降低成本的要求,即使用最少的機器購買最少的測試軟體來完成軟體測試工作。利用雲測試可實現巨大節省,不需要購買或準備很多的個人電腦,購買和安裝各類測試用軟體,也不再需要部署複雜的網路。只需要列出測試目的、環境的要求、虛擬機器台數、何時間斷租用即可,實現按需支付。例如購買一套自動化測試軟體至少花8000元錢,測試中只需要使用2個月,但如果按800元/月租用該軟體雲測試平台,只需要支付1600元。同時隨著企業軟體版本和技術的發展,依賴的測試軟體或環境亦需要升級換代,又會產生升級和維護費用。而在雲測試環境中這些因素都無須企業考慮,交由提供雲測試服務的供應商完成即可。
5. 提高效率
用雲測試這種方式,極大地減少了測試環境搭建時間,如機器和網路準備、作業系統安裝、各種測試載入器軟體安裝等都將節省,只需提前將需要的配置環境告之雲測試服務商,到時間直接使用即可。由於是基於網路上的應用,當測試中遇到軟體使用上等問題時,亦可獲得雲測試服務商遠程快速支援,而很少會出現停滯甚至停止測試現象。
經過討論,我們最終選用的雲測試載入器為百度Mobile Testing。
小學期軟體工程Team 專案進度5