劉鴻飛 石曉寧 梅磊 汪慧婷
摘要:為適應(yīng)多樣性軟件研發(fā)環(huán)境的要求,文章提出了基于云計(jì)算架構(gòu)的云測(cè)試平臺(tái)解決方案。該方案便于測(cè)試人員選取測(cè)試環(huán)境、測(cè)試軟件,然后由平臺(tái)動(dòng)態(tài)地調(diào)用軟件、硬件資源去執(zhí)行測(cè)試,極大地降低了時(shí)間成本和人力成本。文章選用了Klocwork10靜態(tài)分析軟件在云測(cè)試平臺(tái)進(jìn)行自動(dòng)化測(cè)試,結(jié)果表明,云測(cè)試平臺(tái)可以較好地完成測(cè)試任務(wù),滿足了測(cè)試的要求,提高了測(cè)試的效率。
關(guān)鍵詞: 云計(jì)算;云測(cè)試;軟件測(cè)試;自動(dòng)化測(cè)試;Klocwork10
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)09-0035-03
Abstract: In order to meet the testing requirements of various software R&D environments, this paper proposes a cloud testing platform solution based on cloud computing architecture. The platform allows the tester to select the testing environment and software, and then the platform dynamically invokes software and allocates hardware resources to perform the test, which greatly reduces the time cost and labor cost. This paper selected Klocwork 10 static analysis software for automated testing on the cloud testing platform. The results show that the cloud testing platform can complete the test task well, meet the testing requirements, and improve the testing efficiency.
Key words: cloud computing; cloud testing; software testing; automated testing;Klocwork10
1 概述
隨著科技水平的提升,對(duì)軟件可靠性、安全性的要求也逐漸提高[1]。由于缺少統(tǒng)一的開(kāi)發(fā)環(huán)境標(biāo)準(zhǔn),不同裝備的軟件開(kāi)發(fā)環(huán)境迥異,極大增加了軟件測(cè)試人員搭建測(cè)試環(huán)境[2]、進(jìn)行靜態(tài)分析[3]的難度。為了適應(yīng)當(dāng)前多樣的研發(fā)環(huán)境,方便測(cè)試人員進(jìn)行測(cè)試,提高測(cè)試效率,本文設(shè)計(jì)實(shí)現(xiàn)了云測(cè)試平臺(tái)的方案,用戶只需通過(guò)云平臺(tái)的web界面提交測(cè)試請(qǐng)求,便可以得到測(cè)試結(jié)果,省去了測(cè)試人員購(gòu)買測(cè)試設(shè)備、搭建測(cè)試環(huán)境等煩瑣的過(guò)程,從而達(dá)到省時(shí)、省力、省錢的效果,凸顯了云測(cè)試平臺(tái)的易用性。
2 云計(jì)算與云測(cè)試
云計(jì)算[4]是在分布式計(jì)算(Distributed Computing)、并行計(jì)算(Parallel Computing)和網(wǎng)格計(jì)算(Grid Computing)的基礎(chǔ)上發(fā)展起來(lái)的一種計(jì)算模型,具有超大規(guī)模、虛擬化、高可靠性、高可擴(kuò)展性、按需服務(wù)等特點(diǎn)。
云計(jì)算可以提供3個(gè)層次的服務(wù):基礎(chǔ)設(shè)施即服務(wù)(Infrastructure as a Service),如用戶可以租用平臺(tái)的硬件服務(wù)器等;平臺(tái)即服務(wù)(Platform as a Service),如向用戶提供軟件研發(fā)的平臺(tái)等;軟件即服務(wù)(Software as a Service),如向用戶提供軟件租用的服務(wù)等。
云計(jì)算有三種云模式:公有云,一般由第三方供應(yīng)商提供,可通過(guò)互聯(lián)網(wǎng)使用,價(jià)格低廉但無(wú)法保證數(shù)據(jù)的安全性;私有云,為客戶單獨(dú)構(gòu)建,具有較高的服務(wù)質(zhì)量以及數(shù)據(jù)安全可靠型;混合云,公有云與私有云的結(jié)合,具有較強(qiáng)的靈活性,既可以對(duì)外提供服務(wù),又可以保障內(nèi)部數(shù)據(jù)安全。
云測(cè)試[5]是一種基于云計(jì)算技術(shù)的測(cè)試方法,它將軟件測(cè)試或者測(cè)試應(yīng)用作為一種服務(wù)供用戶使用。用戶采用瀏覽器與云測(cè)試平臺(tái)進(jìn)行交互、通過(guò)網(wǎng)絡(luò)上傳測(cè)試腳本或測(cè)試任務(wù)、或直接使用云測(cè)試平臺(tái)的應(yīng)用資源進(jìn)行測(cè)試,最后再通過(guò)網(wǎng)絡(luò)從云測(cè)試平臺(tái)上下載測(cè)試結(jié)果與評(píng)價(jià)。云測(cè)試具有諸多云計(jì)算的特點(diǎn),使其能夠更有效地解決軟件測(cè)試中的問(wèn)題,如價(jià)格便宜、資源整合、使用方便等。
3 軟件云測(cè)試平臺(tái)
3.1 系統(tǒng)架構(gòu)
云平臺(tái)采用模塊化的系統(tǒng)架構(gòu)設(shè)計(jì),如圖1所示,具有高靈活性、高可擴(kuò)展性和高可靠性等特點(diǎn)。
靈活性:可以針對(duì)用戶的不同需求,將功能模塊進(jìn)行靈活的組合;
可擴(kuò)展性:方便添加、升級(jí)功能,無(wú)須改變當(dāng)前系統(tǒng)設(shè)置,只需升級(jí)對(duì)應(yīng)功能模塊或?qū)⑿碌墓δ苣K插入到系統(tǒng)架構(gòu)中即可完成;
高可靠性:采用分布式數(shù)據(jù)庫(kù)技術(shù),能夠保障系統(tǒng)關(guān)鍵數(shù)據(jù)不丟失,同時(shí)提高系統(tǒng)響應(yīng)用戶請(qǐng)求的速度,從而支持大規(guī)模并發(fā)用戶訪問(wèn)。
3.2 系統(tǒng)資源抽象
云平臺(tái)對(duì)底層的硬件資源實(shí)現(xiàn)不同層次和粒度的抽象化,使得云平臺(tái)的軟件環(huán)境與底層的硬件架構(gòu)相分離,便于將異構(gòu)的硬件服務(wù)器、基礎(chǔ)架構(gòu)、存儲(chǔ)、網(wǎng)絡(luò)架構(gòu)等整合成資源池進(jìn)行統(tǒng)一管理,從而可以實(shí)現(xiàn)資源的負(fù)載均衡、動(dòng)態(tài)調(diào)度、快速部署,同時(shí)也可以為用戶以及管理員快速、精準(zhǔn)地掌握任務(wù)、系統(tǒng)運(yùn)行情況提供可靠幫助。
3.3 智能化管理
云平臺(tái)的智能化管理包括整個(gè)平臺(tái)的負(fù)載均衡、實(shí)時(shí)監(jiān)控和任務(wù)的動(dòng)態(tài)調(diào)度等,同時(shí)可以根據(jù)系統(tǒng)各種指標(biāo)以及運(yùn)行的歷史信息形成狀態(tài)評(píng)估以及報(bào)表,供運(yùn)維人員參考。