探底服務(wù)虛擬化工具 應(yīng)對服務(wù)測試挑戰(zhàn)
快速推進(jìn)合成應(yīng)用的部署讓質(zhì)量管理團(tuán)隊(duì)的度日艱難,因?yàn)橛行┓?wù)已經(jīng)完成并在運(yùn)行,而另外一些還在開發(fā)中。不幸的是,所有的這些服務(wù)都要經(jīng)歷不斷更新的版本。隨著內(nèi)容的不斷更新,企業(yè)后端系統(tǒng)和互聯(lián)網(wǎng)天生的固態(tài)正影響著虛擬化測試。
2003年,Parasoft聲稱其棄產(chǎn)品SOATest體現(xiàn)了服務(wù)虛擬化概念。這一術(shù)語是在2007年由iTKO在LISA平臺發(fā)布時發(fā)明出來的,2011年CA收購了iTKO。近年來,包括IBM及惠普在內(nèi)的主流企業(yè)軟件供應(yīng)商已經(jīng)開發(fā)或收購了一些服務(wù)虛擬化工具,服務(wù)虛擬化已蓄勢待發(fā),準(zhǔn)備成為主流的工具類型。

服務(wù)虛擬化
服務(wù)虛擬化成為一類新興的組件建模工具的基礎(chǔ)。利用一種新的仿真方式,在軟件服務(wù)實(shí)現(xiàn)之前,開發(fā)團(tuán)隊(duì)就可以與這些服務(wù)協(xié)同工作了。這涉及到在創(chuàng)建高質(zhì)量的復(fù)合應(yīng)用時遇到的某些最大的瓶頸,并幫助敏捷開發(fā)工作,努力跟上快節(jié)奏的Web應(yīng)用的步伐。
在應(yīng)用開發(fā)生命周期中植入虛擬化的想法值得推廣,而且會令面臨困境的企業(yè)感到興奮。CA Technologies服務(wù)虛擬化高級顧問王志明表示:“這會使得包括開發(fā)、測試及運(yùn)營團(tuán)隊(duì)在內(nèi)的IT組織管理可以管理典型的成本、質(zhì)量及時間進(jìn)度的三角關(guān)系。”
服務(wù)虛擬化工具使得軟件開發(fā)團(tuán)隊(duì)可以在已有或計(jì)劃服務(wù)的上下文中,使用預(yù)期要交互的新代碼測試新服務(wù)的性能及行為。這降低了在開發(fā)中測試代碼的門檻,使得在開發(fā)過程可以更早更容易地發(fā)現(xiàn)缺陷,并打開了應(yīng)用敏捷開發(fā)之門。
最近的一項(xiàng)調(diào)查發(fā)現(xiàn)組織與平均8到10個受測應(yīng)用存在依賴關(guān)系。而開發(fā)者在任何時間點(diǎn)上只能接觸到這些依賴關(guān)系的30%。服務(wù)虛擬化工具可以移除若干開發(fā)過程中對測試硬件可用性、服務(wù)及隱私方面的約束。

服務(wù)虛擬化解耦約束
通過服務(wù)虛擬化,開發(fā)團(tuán)隊(duì)還可以針對新服務(wù)的特定行為進(jìn)行測試,而不是等待代碼開發(fā)完畢再開始。極大地改善并加快了尋找、解決缺陷問題的能力,同時強(qiáng)化了朝著更敏捷、高度迭代開發(fā)技術(shù)趨勢的演進(jìn)。
傳統(tǒng)上開發(fā)者已經(jīng)建立了stub和mock來表示新代碼需要交互的服務(wù)。這一方案把開發(fā)者的注意力從寫代碼上轉(zhuǎn)移,從而減少了其有用的輸出。開發(fā)者針對mock進(jìn)行測試的時候,他們將服務(wù)預(yù)期表現(xiàn)出來的行為進(jìn)行編碼,而不是根據(jù)實(shí)際情況進(jìn)行。而最令人生厭的集成問題就是由于不好的假設(shè)導(dǎo)致的。服務(wù)虛擬化對代碼有可能需要交互的服務(wù)的行為建模。這跟對所有的底層代碼邏輯都進(jìn)行建模相比要容易得多。
針對客戶在開發(fā)復(fù)雜應(yīng)用時所遇到的系統(tǒng)約束和測試數(shù)據(jù)相關(guān)性等問題,CA LISA產(chǎn)品套件可對傳統(tǒng)虛擬化技術(shù)不能涉及的無法任意使用的系統(tǒng)進(jìn)行建模和模擬。通過采用CA LISA,多團(tuán)隊(duì)可以進(jìn)行并行開發(fā),更好地管理測試數(shù)據(jù)和用例,并減少所需的實(shí)時環(huán)境數(shù)量。

CA LISA服務(wù)虛擬化
在以往的開發(fā)流程中,團(tuán)隊(duì)通常會花費(fèi)30%的時間進(jìn)行開發(fā),剩余的時間則都進(jìn)行服務(wù)整體驗(yàn)證等。在現(xiàn)場演示中,CA LISA虛擬化服務(wù)更容易實(shí)現(xiàn)和管理,不到幾分鐘就能建立幾個虛擬化服務(wù)了。
另外,考慮到服務(wù)仿真模擬中的數(shù)據(jù)安全問題,王志明在演示過程中介紹了CA LISA的“去敏感化”功能,保護(hù)了客戶環(huán)境的真實(shí)數(shù)據(jù)。而且目前,LISA支持大部分主流傳輸協(xié)議,包括HTTP、JDBC、TCP、MQ等,同時也支持自主開發(fā)的協(xié)議加入到環(huán)境中。目前CA LISA按照Licence出售,提供功能測試和性能測試兩個版本。
CA Technologies中國區(qū)總經(jīng)理孫志偉表示市場已經(jīng)準(zhǔn)備好聆聽服務(wù)虛擬化在幫助管理成本方面能做些什么。這已經(jīng)在金融服務(wù)、零售、電信及其他組織內(nèi)部署了高度復(fù)合的應(yīng)用。在測試組織無法接觸大型主機(jī)的時候這很有用。此外,云計(jì)算也是服務(wù)虛擬化測試的推動力之一。