郝明明
(南瑞集團(tuán)有限公司,江蘇南京,210032)
我們知道傳統(tǒng)的軟件測試服務(wù)多以人工為主,且主要是做硬件設(shè)備環(huán)境的測試,在硬件測試達(dá)到合理需求后再進(jìn)行軟件部署,進(jìn)行軟件的測試流程和方案,這樣一來不但浪費時間和人力,失誤率也會大大增加。而應(yīng)用云計算,可以連接互聯(lián)網(wǎng)實現(xiàn)資源的多人共享,用戶終端處理起來也比較方便,可以實現(xiàn)遠(yuǎn)程控制和服務(wù),實現(xiàn)軟件測試的自動化,無需通過測試腳本錄制、測試用例設(shè)計等,節(jié)省了很多人力物力和時間,相對于傳統(tǒng)的人工操作進(jìn)行測試可以大大降低失誤率,提高軟件測試的效率,利用現(xiàn)代網(wǎng)絡(luò)技術(shù)可以在構(gòu)建的虛擬平臺上實現(xiàn)測試操作方便獲取相關(guān)期望數(shù)據(jù),軟件硬件可以同時進(jìn)行測試,使資源能夠?qū)崿F(xiàn)更加合理化配置,另外,云計算環(huán)境下可以實現(xiàn)軟件測試數(shù)據(jù)的大量儲存和分析,方便調(diào)取和對比。云計算在虛擬化技術(shù)、分布式儲存、云平臺管理以及海量數(shù)據(jù)管理儲存上具有傳統(tǒng)測試服務(wù)不可替代的優(yōu)勢,在資金預(yù)算上,只需要支付平臺費用即可,可以節(jié)省測試工具上的一筆資金,企業(yè)利用云測試服務(wù),還可以節(jié)省一部分的員工工資費用,系統(tǒng)自動化程度很高,平臺環(huán)境可以被少部分測試人員使用,且相對于傳統(tǒng)測試服務(wù)測試資源更加豐厚,為軟件測試帶來極大的便利。
云計算應(yīng)用到軟件測試具有傳統(tǒng)測試不具有的很多優(yōu)勢,在測試工具配置、系統(tǒng)環(huán)境構(gòu)建以及工具使用上具有更高的操作效率,而云計算服務(wù)的應(yīng)用最核心的部分就是交互平臺,交互平臺的建立可以實現(xiàn)整個測試過程完全在虛擬網(wǎng)絡(luò)中進(jìn)行,測試人員只需要按提示完成互聯(lián)網(wǎng)界面的操作就可實現(xiàn)軟件測試,在用戶端等待服務(wù)器輸出結(jié)果即可,在對結(jié)果進(jìn)行分析得到軟件測試的最終信息,因此,交互平臺就是中間的轉(zhuǎn)換站,實現(xiàn)云計算環(huán)境和軟件測試服務(wù)之間結(jié)合的橋梁。
軟件開發(fā)的初始就要進(jìn)行客戶和市場的調(diào)研,充分了解測試的需求,根據(jù)客戶和市場的要求了解軟件應(yīng)該達(dá)到的要求和程度。首先,了解設(shè)計軟件的性質(zhì),是商業(yè)軟件還是辦公軟件亦或是個人應(yīng)用軟件,對其安全性、保密性以及軟件大小和速度進(jìn)行不同程度的要求,了解軟件最終需要的達(dá)到的要求后制定一個標(biāo)準(zhǔn),按照標(biāo)準(zhǔn)進(jìn)行軟件測試結(jié)果的對比分析;其次,為了測試過程能夠順利進(jìn)行,在測試之處就要考慮人力資源、硬件資源等方面的準(zhǔn)備是否都到位,為了使操作平臺功能得以順利發(fā)揮必須對設(shè)備進(jìn)行人力、財力的支持;再次,了解測試過程是否需要預(yù)先安裝一些輔助系統(tǒng)或軟件,做好準(zhǔn)備工作進(jìn)行預(yù)先配置;最后,為了將測試過程有條不紊的進(jìn)行必須將整個測試過程細(xì)化,可以預(yù)先分成幾個階段,完成階段性的對比和分析,最后再進(jìn)行匯總分析。進(jìn)行交互平臺的設(shè)計還需考慮虛擬化技術(shù)以及交互界面的設(shè)計,保證界面流暢的切換,完善各方面的資源管理,不斷更新執(zhí)行方法。交互平臺的設(shè)計主要分成三層構(gòu)架類型,其中最主要的是基礎(chǔ)設(shè)施云。進(jìn)行交互平臺設(shè)計時,需要測試人員先在互聯(lián)網(wǎng)界面進(jìn)行選擇,在明確了測試需求后,通過AWS EC2的調(diào)用進(jìn)行虛擬機(jī)實例的構(gòu)建,服務(wù)器通過AGENT輸出的數(shù)據(jù)進(jìn)行信息確認(rèn)和測試結(jié)果的發(fā)布,最終的結(jié)果向服務(wù)器進(jìn)行傳輸,并有相應(yīng)的圖表和報表生成,用戶或者測試人員只需要通過互聯(lián)網(wǎng)查看報表圖片就可以對軟件測試結(jié)果進(jìn)行分析,得到測試結(jié)果。
交互平臺實現(xiàn)了用戶和設(shè)備的轉(zhuǎn)換和信息的傳遞,在此基礎(chǔ)上需要考慮構(gòu)建測試云系統(tǒng),這樣才能對整個測試過程實現(xiàn)自動化。在基礎(chǔ)設(shè)施云的構(gòu)建上一般有兩種途徑,一是通過市場了解和對比分析合理購進(jìn),二是技術(shù)開發(fā)自行構(gòu)建。由于自行構(gòu)建需要很大的技術(shù)支持和財力、人力、物力的投入,很多非專門的公司不會選擇自行構(gòu)建,大都選擇直接購進(jìn)。在云系統(tǒng)的選擇上,要全面綜合考慮系統(tǒng)測試的要求和配合度以及資金等方面?,F(xiàn)在市場上基礎(chǔ)設(shè)施云的選擇多以Amazon EC2為主,因其靈活性較強、彈性很大,在計算能力上能夠做到熟練縮放,方便交互平臺上進(jìn)行信息的儲存和調(diào)用,極大縮短頁面請求和反應(yīng)的時間,受到廣大用戶的青睞。其次,在構(gòu)建模板映像配置上,需要將相關(guān)配置、程序和數(shù)據(jù)都融入其中,虛擬機(jī)實際運行中會出現(xiàn)多個運行地點,為防止運行混亂,降低提取信息速度,可以將虛擬機(jī)實例、靜態(tài)IP端點等設(shè)置其中,確保整個虛擬機(jī)可靠運行。測試人員在進(jìn)行虛擬機(jī)調(diào)度和配置當(dāng)中,應(yīng)根據(jù)實際需求來配置,單機(jī)配置中能夠直接開啟虛擬機(jī),并調(diào)度到響應(yīng)接口,在客戶端輸入指令后,虛擬機(jī)能夠通過服務(wù)器來獲取相應(yīng)的測試數(shù)據(jù),再根據(jù)要求向客戶端傳達(dá)測試信息和結(jié)果,并將自動轉(zhuǎn)變?yōu)榇龣C(jī)狀態(tài)。
軟件測試平臺是一個綜合性的非常復(fù)雜的系統(tǒng),需要各方面協(xié)調(diào)、連接,其中包括軟件、硬件以及服務(wù)等多功能,不同類型的云測試服務(wù)平臺所利用的服務(wù)重點也不盡相同,隨著計算機(jī)技術(shù)和互聯(lián)網(wǎng)技術(shù)的發(fā)展,云計算應(yīng)用在上午軟件中的例子越來越多且占市場的一大部分,由于各企業(yè)、事業(yè)單位或團(tuán)體對軟件的需求不盡相同,所以在進(jìn)行軟件測試的時候就需要測試人員依據(jù)用戶需求來收集測試結(jié)果,進(jìn)行個性化分析,以滿足更多特殊需求的用戶。系統(tǒng)中的AGENT能夠?qū)ζ脚_接口進(jìn)行直接的利用,縮短了系統(tǒng)的啟動和轉(zhuǎn)換時間,AGENT能夠在規(guī)定時間內(nèi)完成對相應(yīng)軟件配置的要求,測試完成后,AGENT能夠按照預(yù)先設(shè)定的標(biāo)準(zhǔn)向服務(wù)器上傳結(jié)果報告,因此,預(yù)先在交互平臺系統(tǒng)和服務(wù)器中設(shè)置用戶所需的報告要求,制定一系列的標(biāo)準(zhǔn)程序,使AGENT輸出用戶需要的數(shù)據(jù)信息是至關(guān)重要的,由于不同的軟件設(shè)計需求和結(jié)果需求都不同,用戶想要的數(shù)據(jù)信息也不盡相同,故對服務(wù)系統(tǒng)提前進(jìn)行標(biāo)準(zhǔn)設(shè)定是必要的,根據(jù)需求編寫出有關(guān)軟件的標(biāo)準(zhǔn)數(shù)據(jù)以及想要的相關(guān)信息,有針對的進(jìn)行測試和提取針對性信息能夠有效的縮短測試的時間和服務(wù)器的運轉(zhuǎn)分類時間,在服務(wù)器接收到結(jié)果后,應(yīng)用預(yù)先設(shè)定的標(biāo)準(zhǔn)進(jìn)行相應(yīng)的分析、統(tǒng)計和整理,提取最有效的信息,進(jìn)行總結(jié)匯總,最終向用戶做出軟件測試報告的結(jié)果反饋。