周玲妤
摘要 隨著互聯(lián)網(wǎng)+戰(zhàn)略的實施,越來越多的企業(yè)開始結(jié)合互聯(lián)網(wǎng)來開發(fā)新的商業(yè)模式。在這樣的潮流趨勢下,與其密不可分的一部分就有軟件測試。如何有效的檢測出軟件中所存在的錯誤和缺陷,使用何種方法才能更好的在提高軟件的容錯率的同時降低成本,增加軟件的友好度是軟件開從業(yè)人員高度關(guān)注的一個問題。
【關(guān)鍵詞】軟件測試 云計算 云測試
1 引言
軟件測試是一個用來鑒定軟件的質(zhì)量的一個過程,其目的是發(fā)現(xiàn)軟件中可能存在的錯誤。傳統(tǒng)的軟件測試一般是在本地對軟件進行測試,與云測試中將各個測試用例分布到不同硬件進行并行測試上相比,傳統(tǒng)軟件測試每次只能在一個硬件上對測試用例串行的進行測試,且在此過程中產(chǎn)生的各類成本嚴重限制了測試技術(shù)的發(fā)展。結(jié)合云計算的分布式特點及優(yōu)勢,云測試可以合理動態(tài)調(diào)用各類資源,通過一個共享可用的自動化測試環(huán)境交付平臺給用戶提供高效的便捷服務(wù)。而用戶只需要登錄到該測試環(huán)境即可使用該服務(wù)。
2 傳統(tǒng)軟件測試
傳統(tǒng)的軟件測試方法主要是通過在本地對軟件進行測試來發(fā)現(xiàn)軟件中所可能存在的問題,其分類可分為靜態(tài)測試和動態(tài)測試兩種。靜態(tài)測試主要是對軟件源代碼和軟件產(chǎn)品需求和設(shè)計規(guī)格說明書進行研讀審查來實現(xiàn)對軟件的測試,該種方法在查錯和功能分析上很有優(yōu)勢。而動態(tài)測試主要是通過實際運行程序來發(fā)現(xiàn)其中的問題,可分為白盒測試和黑盒測試。
3 云測試
云測試是基于云計算的一種新型測試方案,這種測試方案可以給用戶帶來高效率、低成本的專業(yè)服務(wù)。云測試使用門檻低,提供按需服務(wù)并有針對性的收費的方式,用戶通過互聯(lián)網(wǎng)及時獲取到所需的測試資源,實現(xiàn)快速測試。不僅節(jié)約了本地資源開銷,同時還節(jié)約了維護和審批的成本。除此之外,用戶可以在任意時刻、在不同的環(huán)境中進行測試,而且可以快速的拿到有效的測試報告并將其投入使用。
4 云測試的體系結(jié)構(gòu)
云測試作為一種基于云計算的測試方案,其特征是擁有一個基于云的共享構(gòu)架平臺,測試程序可以在任意終端上執(zhí)行,用戶可以通過該平臺獲取軟件測試所需的資源從而完成測試工作。在云測試提出后不久,Yu等人就已經(jīng)有人提出了關(guān)于云測試的基礎(chǔ)架構(gòu)_——Taa S五層架構(gòu)。隨后也有一些其他學(xué)者設(shè)計出了不同的云測試體系結(jié)構(gòu),本文主要介紹肖明清等人[2]的設(shè)計方案。
在這種設(shè)計方案中,云測試的體系結(jié)構(gòu)可以分為三層:硬件層、云測試服務(wù)層、用戶層。用戶層即客戶端,用戶通過客戶端選擇所需服務(wù)并執(zhí)行測試項目。云測試服務(wù)層是測試的核心部分,用于實現(xiàn)相關(guān)的測試算法,其功能主要包括測試資源的控制及管理、測試程序的調(diào)度與執(zhí)行和測試程序的編輯與開發(fā)等。無論是測試數(shù)據(jù)庫的訪問還是進行資源的管理控制都是在該平臺下進行的。硬件則為實現(xiàn)云測試提供相應(yīng)的基礎(chǔ)設(shè)施。這些基礎(chǔ)設(shè)施的使用是通過利用云平臺構(gòu)建其虛擬測試資源池來實現(xiàn)的。
5 云測試與傳統(tǒng)軟件測試的區(qū)別
傳統(tǒng)的軟件測試重點關(guān)注測試的過程,以求能盡可能深入的了解測試項目的真實情況。因此,在這種設(shè)計模式下,測試人員必須要設(shè)計出多種組合的測試用例,盡可能的考慮到所有情況并對這些測試用例逐一進行測試,才能得出較優(yōu)的測試結(jié)果。但是隨著移動互聯(lián)網(wǎng)的發(fā)展,現(xiàn)如今的軟件的更新?lián)Q代速度非???,人工的去逐個進行用例測試是一件很耗時的事情。除此之外,使用傳統(tǒng)的軟件測試所需要的環(huán)境的搭建和維護的成本很高,測試資源彈性也很弱。
而云測試與傳統(tǒng)軟件測試不同,它更注重對全局的關(guān)注。它能夠提供自動化的測試,并利用云計算分布式的特點將所有的測試用例分散到不同的硬件設(shè)備上,并行的完成測試,這樣就大大的縮短了測試所需的時間。不過因其對軟件的測試是在云上完成的,因此,與傳統(tǒng)軟件測試相比,在云上進行測試還要關(guān)注一些額外的東西,例如線上監(jiān)控和熱修復(fù)等。不過盡管云測試在安全性能上不如傳統(tǒng)的軟件測試,但其在成本節(jié)約、可靠性、實時性和容錯性能上都比傳統(tǒng)的軟件測試要強。表l展示了云測試與傳統(tǒng)軟件測試的區(qū)別。
6 總結(jié)與展望
隨著互聯(lián)網(wǎng)+戰(zhàn)略的部署與實現(xiàn)進程的推進,網(wǎng)絡(luò)軟件的頻繁迭代,傳統(tǒng)軟件測試方法的不足將會愈加明顯,云測試將會因其能夠彌補傳統(tǒng)軟件測試方法的不足而擁有廣闊的應(yīng)用前景。不過究竟是使用云測試還是使用傳統(tǒng)的軟件測試還是要根據(jù)測試軟件自身的特性來選擇,而云測試領(lǐng)域也還有很多問題亟待解決。
參考文獻
[1]楊本生,袁祥夢,黃曉光,基于云計算的軟件測試系統(tǒng)框架研究[J].計算機測量與控制,2014,22 (06):168 3-1686.
[2]肖明清,楊召,趙鑫,云測試的概念及應(yīng)用探索[J].計算機測量與控制,2016,24 (01).
[3]陳瀟瀟,云測試系統(tǒng)研究綜述[J].科學(xué)咨詢(科技·管理),2015 (09):34-37,133.