使用Azure/Google云應(yīng)用測(cè)試簡(jiǎn)述
著軟件開發(fā)周期加快,IT部門必須更迅速地測(cè)試基于云的應(yīng)用。正確的工具和服務(wù)可以幫助加快這一步伐。
在云端部署軟件的步伐正在加快。開發(fā)人員不再需要花費(fèi)數(shù)月的修復(fù)大量bug和功能增強(qiáng),而是可以在一個(gè)星期甚至一天內(nèi)就推出新的云應(yīng)用。但這種快速的轉(zhuǎn)變需要在部署之前對(duì)應(yīng)用程序進(jìn)行快速的測(cè)試。谷歌計(jì)算引擎和微軟的Azure提供了一些工具,以確保新的云應(yīng)用可以按照預(yù)期的那樣正常工作。
開發(fā)人員應(yīng)該在一個(gè)可控的環(huán)境中盡可能復(fù)制生產(chǎn)環(huán)境來對(duì)云應(yīng)用進(jìn)行測(cè)試。對(duì)于本地應(yīng)用的開發(fā),要維護(hù)一個(gè)單獨(dú)的等同于生產(chǎn)環(huán)境的測(cè)試環(huán)境的成本通常令人望而卻步。但在云中,實(shí)施一個(gè)高度自動(dòng)化管理的測(cè)試環(huán)境的邊際成本卻很低。
使用谷歌測(cè)試云應(yīng)用
谷歌計(jì)算引擎以性能著稱, 但其不斷增長(zhǎng)的編碼、測(cè)試和部署的服務(wù)列表可能會(huì)大大減少對(duì)軟件開發(fā)者的吸引力。這些服務(wù)和工具包括Google Deployment Manager、Cloud Trace、Cloud Monitoring和Cloud Security Scanner。
谷歌的Deployment Manager是一個(gè)模板驅(qū)動(dòng)的服務(wù),負(fù)責(zé)將資源部署到云中。使用該服務(wù),云管理員可以定義一個(gè)擁有虛擬機(jī)、存儲(chǔ)、負(fù)載平衡器和其他資源的測(cè)試環(huán)境。
測(cè)試云應(yīng)用程序提供了收集性能數(shù)據(jù)的機(jī)會(huì),和進(jìn)行單元測(cè)試。在生產(chǎn)環(huán)境中,谷歌的Cloud Monitoring服務(wù)產(chǎn)生警報(bào)并顯示到性能儀表板上。這也有利于對(duì)新的應(yīng)用程序代碼進(jìn)行壓力測(cè)試。對(duì)頻繁執(zhí)行的代碼的任何小的修改可能會(huì)對(duì)總體性能產(chǎn)生顯著的影響。然而,這些影響并不總是很明顯,特別是對(duì)于分布式系統(tǒng)。通過性能測(cè)試,開發(fā)人員可以找出潛在的問題領(lǐng)域。
Google App Engine中的Cloud Traces服務(wù)負(fù)責(zé)收集遠(yuǎn)程過程調(diào)用App Engine服務(wù)的性能數(shù)據(jù)。這有助于定位長(zhǎng)時(shí)間運(yùn)行以及低效的運(yùn)營(yíng)。Cloud Security Scanner,也是針對(duì)Google App Engine,用以識(shí)別已知的漏洞,如跨站點(diǎn)腳本以及HTTPS和HTTP混合的內(nèi)容傳輸。
微軟的Azure測(cè)試云應(yīng)用
微軟的Azure也提供了云應(yīng)用程序的測(cè)試和部署工具。比如說,Visual Studio Online,是一個(gè)軟件開發(fā)平臺(tái),用于管理應(yīng)用程序代碼和跟蹤開發(fā)人員任務(wù)。Visual Studio通過持續(xù)集成,規(guī)劃和缺陷跟蹤等工具來支持敏捷開發(fā)模式。
微軟的Visual Studio Application Insights是一個(gè)新的預(yù)覽版服務(wù),將來有可能成為一個(gè)關(guān)鍵的云測(cè)試和監(jiān)控服務(wù)。它允許開發(fā)人員和云管理員監(jiān)測(cè)運(yùn)行在Azure或其他平臺(tái)上的 ASP.NET和Java應(yīng)用。該服務(wù)還可以監(jiān)控移動(dòng)應(yīng)用,如那些用于Android和iOS,以及Mac OS X和Windows應(yīng)用。
微軟的Azure Automation服務(wù)減少了人工的、重復(fù)的任務(wù)。該服務(wù)使用Windows PowerShell腳本,簡(jiǎn)化了與其他PowerShell應(yīng)用程序的集成。使用DevOps的思想作為指導(dǎo),外加一些圖形創(chuàng)作工具,Azure Automation在處理云資源時(shí)提供一個(gè)高層次的抽象化。同Google Deployment Manager一樣,Azure Automation也提供了一些工具可以幫助開發(fā)人員和云管理員在云中快速創(chuàng)建一致的測(cè)試環(huán)境。
除了微軟和谷歌的服務(wù),開發(fā)人員還可以使用眾所周知的成熟的應(yīng)用測(cè)試工具,如Jenkins。
當(dāng)然,工具并不是云應(yīng)用測(cè)試唯一需要的。明確定義的過程也是成功的關(guān)鍵。例如,開發(fā)人員應(yīng)遵循標(biāo)準(zhǔn)的做法從代碼庫中提交和獲取代碼。測(cè)試管理員應(yīng)該能夠從代碼庫獲取最新的代碼并根據(jù)需要對(duì)其進(jìn)行測(cè)試。
開發(fā)人員應(yīng)該經(jīng)常進(jìn)行測(cè)試,盡早發(fā)現(xiàn)bug和性能問題。自動(dòng)化同時(shí)還降低了測(cè)試的成本。使用云應(yīng)用監(jiān)控工具來減少分析結(jié)果所需的成本和時(shí)間,特別是大容量壓力測(cè)試。
主流的云服務(wù)提供商時(shí)常發(fā)布新的服務(wù)。一些諸如代碼管理和監(jiān)控的工具分別面向開發(fā)人員和運(yùn)營(yíng)支持。然而,這兩種類型的工具對(duì)于測(cè)試云應(yīng)用都非常有用。隨著谷歌和微軟不斷推出額外的服務(wù),考慮他們?nèi)绾文軒椭愕慕M織簡(jiǎn)化測(cè)試操作,提高報(bào)告結(jié)果的內(nèi)容和質(zhì)量。
原文鏈接:http://www.searchcloudcomputing.com.cn/showcontent_90165.htm