◇福州軟件職業(yè)技術(shù)學(xué)院 吳靜
計(jì)算機(jī)軟件測(cè)試的開展,可確保軟件的質(zhì)量,便于風(fēng)險(xiǎn)評(píng)估。軟件測(cè)試貫穿到計(jì)算機(jī)軟件開發(fā)全過程,通過發(fā)現(xiàn)軟件錯(cuò)誤和有效定義等,發(fā)揮測(cè)試技術(shù)的應(yīng)用價(jià)值?,F(xiàn)針對(duì)軟件測(cè)試技術(shù)相關(guān)內(nèi)容,展開具體的論述。首先,概述了軟件測(cè)試技術(shù)的特點(diǎn)。其次,分析計(jì)算機(jī)軟件測(cè)試技術(shù)與開發(fā)應(yīng)用情況。最后,提出軟件測(cè)試技術(shù)與應(yīng)用發(fā)展的策略。
近年來,我國(guó)軟件行業(yè)的快速發(fā)展為軟件測(cè)試行業(yè)的發(fā)展提供了良好的基礎(chǔ),軟件測(cè)試行業(yè)市場(chǎng)規(guī)模快速增長(zhǎng)。隨著軟件行業(yè)的快速發(fā)展,對(duì)軟件測(cè)試市場(chǎng)需求的需求增加,促使相關(guān)人才的培養(yǎng)和技術(shù)研究增加。
軟件測(cè)試指的是用來促進(jìn)鑒定軟件的正確性和完整性以及安全性、質(zhì)量的過程。整個(gè)軟件測(cè)試為實(shí)際輸出和預(yù)期輸出之間的審核或?qū)Ρ确治?,在一定的條件下對(duì)程序開展操作,進(jìn)而發(fā)現(xiàn)程序存在的錯(cuò)誤,衡量軟件質(zhì)量,分析是否可以達(dá)到設(shè)計(jì)要求。在軟件行業(yè)發(fā)達(dá)的國(guó)家,軟件測(cè)試產(chǎn)業(yè)已經(jīng)形成規(guī)模。我國(guó)軟件測(cè)試行業(yè)起步晚且發(fā)展速度較慢,不過計(jì)算機(jī)軟件行業(yè)的快速發(fā)展,帶動(dòng)著軟件測(cè)試的發(fā)展。隨著軟件測(cè)試行業(yè)的快速發(fā)展,呈現(xiàn)出規(guī)模化發(fā)展的態(tài)勢(shì),促進(jìn)企業(yè)專業(yè)化發(fā)展。除此之外,對(duì)測(cè)試技術(shù)和人員的需求也在不斷增加。
(1)并行測(cè)試技術(shù)。計(jì)算機(jī)軟件測(cè)試中,并行測(cè)試技術(shù)基于并行處理,完成相應(yīng)的測(cè)試。測(cè)試時(shí),通過并行測(cè)試程序的控制,可以達(dá)到同時(shí)測(cè)試多個(gè)對(duì)象的目的。相比傳統(tǒng)的串行測(cè)試,可全面提高系統(tǒng)的利用率,能夠減少軟件測(cè)試等待時(shí)間,同時(shí)可以達(dá)到提高開發(fā)與測(cè)試性能的目的。在實(shí)踐中并行測(cè)試,支持同時(shí)測(cè)試多個(gè)系統(tǒng),為新型測(cè)試技術(shù)。并行測(cè)試的技術(shù)原理是,同時(shí)對(duì)多個(gè)對(duì)象開展測(cè)試,系統(tǒng)能夠來回切換測(cè)試對(duì)象,最終實(shí)現(xiàn)并行測(cè)試的目的。
一般來說,軟件測(cè)試劃分為單元測(cè)試和集成測(cè)試。其中,單元測(cè)試指的是將所有功能進(jìn)行拆分處理,劃分為最小單位,完成軟件的測(cè)試。集成測(cè)試指的是對(duì)各個(gè)模塊之間的關(guān)系開展測(cè)試,測(cè)試是通過驗(yàn)證單一的功能模塊是否可以通過一個(gè)線程實(shí)現(xiàn)測(cè)試,同時(shí)檢測(cè)模塊之間的關(guān)系是否可以通過一個(gè)線程開展測(cè)試,進(jìn)而達(dá)到多線程并行測(cè)試的效果。詳細(xì)分析如下:①單元測(cè)試。計(jì)算機(jī)軟件開發(fā)方面,單元測(cè)試為主要流程,可簡(jiǎn)化錯(cuò)誤檢測(cè),能夠提升軟件的質(zhì)量,為開發(fā)人員提供有力信息,縮短軟件開發(fā)時(shí)間,減少軟件開發(fā)成本。實(shí)際應(yīng)用中將應(yīng)用程序拆分為最小的單元,再進(jìn)行獨(dú)立測(cè)試,最終可精準(zhǔn)發(fā)現(xiàn)計(jì)算機(jī)程序的錯(cuò)誤。對(duì)每個(gè)獨(dú)立模塊,開辟一個(gè)線程使得線程測(cè)試一個(gè)模塊。通常來說,軟件測(cè)試中采用的單元測(cè)試,能夠在線程體內(nèi)實(shí)現(xiàn)。在計(jì)算機(jī)軟件測(cè)試開始時(shí),各個(gè)線程同時(shí)啟動(dòng),進(jìn)而完成并行測(cè)試的目的。②集成測(cè)試。計(jì)算機(jī)軟件測(cè)試中,采用集成測(cè)試方法,目的是找出軟件設(shè)計(jì)的程序結(jié)構(gòu),模塊調(diào)用關(guān)系等。測(cè)試時(shí),獨(dú)立測(cè)試各個(gè)關(guān)系,通過開辟線程的方式完成關(guān)系測(cè)試,進(jìn)而完成并行測(cè)試。
(2)并行測(cè)試技術(shù)的實(shí)現(xiàn)思路。計(jì)算機(jī)測(cè)試實(shí)踐中,使用的并行測(cè)試系統(tǒng),主要組成包括多處理器并行測(cè)試結(jié)構(gòu)與單一處理器。若想實(shí)現(xiàn)并行測(cè)試,通常要配置兩個(gè)及以上的處理器。利用操作系統(tǒng)進(jìn)行控制,通過共享的主村或輸入/輸出子系統(tǒng)完成測(cè)試,因此測(cè)試系統(tǒng)對(duì)軟硬件的要求很高。在多單一處理器上構(gòu)建的計(jì)算機(jī)并行測(cè)試結(jié)構(gòu),主要是對(duì)不同測(cè)試任務(wù)的調(diào)度,進(jìn)而分配單個(gè)處理器處理任務(wù)的時(shí)間,最終完成并行測(cè)試。測(cè)試時(shí),各個(gè)進(jìn)程均以一個(gè)主線程開始運(yùn)行。如果應(yīng)用程序開始執(zhí)行,那么操作系統(tǒng)將會(huì)創(chuàng)建一個(gè)主線程。設(shè)計(jì)的多線程的程序,不僅有主線程,程序還能夠根據(jù)實(shí)際需求利用操作系統(tǒng)完成次線程的創(chuàng)建,支持多個(gè)次線程的創(chuàng)建。為高效化完成測(cè)試,要求次線程能夠同時(shí)執(zhí)行,因此建設(shè)的次線程通常不會(huì)立馬啟動(dòng),需加入人工控制的事件,當(dāng)需要的線程全部創(chuàng)建后,同時(shí)啟動(dòng)各個(gè)線程。值得注意的是,采取并行測(cè)試的方法,所有的線程可能會(huì)產(chǎn)生依賴關(guān)系,因此還要加大對(duì)線程之間資源使用分配的研究。
(3)并行測(cè)試技術(shù)的應(yīng)用方案。對(duì)于計(jì)算機(jī)軟件測(cè)試中需要使用多個(gè)系統(tǒng)測(cè)試多個(gè)軟件的問題,采取并行測(cè)試技術(shù)可有效處理。一般來說,設(shè)計(jì)的并行測(cè)試系統(tǒng),主要組成包括服務(wù)器和PC集。其中,PC集中涉及到多臺(tái)設(shè)備,例如,第一存儲(chǔ)器和第一處理器以及第一計(jì)算機(jī)程序;PC集則包括第二存儲(chǔ)器和第二處理器以及第二計(jì)算機(jī)程序。一般來說,在具體執(zhí)行時(shí),第一處理器在執(zhí)行對(duì)應(yīng)的程序時(shí),主要的流程如下:選擇計(jì)算機(jī)軟件測(cè)試所需的PC集。根據(jù)PC集中每一臺(tái)裝置的IP地址,根據(jù)程序的要求,向每臺(tái)PC的預(yù)設(shè)端口發(fā)送測(cè)試命令。第二處理器按照以下流程運(yùn)行:當(dāng)接收到系統(tǒng)的測(cè)試命令后,開始進(jìn)行自動(dòng)化測(cè)試。
本文設(shè)計(jì)的并行測(cè)試的方法及系統(tǒng),服務(wù)器選擇測(cè)試用的PC集,根據(jù)所述PC集中的每臺(tái)PC的IP地址向每臺(tái)PC的預(yù)設(shè)端口發(fā)送測(cè)試命令,所述測(cè)試命令包括待測(cè)試區(qū)域的截圖,所述PC集包括多臺(tái)PC;所述多臺(tái)PC并行監(jiān)聽所述預(yù)設(shè)端口,當(dāng)監(jiān)聽到測(cè)試命令時(shí),根據(jù)所述待測(cè)試區(qū)域的截圖進(jìn)行自動(dòng)化測(cè)試,通過向每臺(tái)PC的預(yù)設(shè)端口發(fā)送測(cè)試命令,而多臺(tái)PC并行監(jiān)聽所述預(yù)設(shè)端口,當(dāng)監(jiān)聽到測(cè)試命令時(shí),根據(jù)所述待測(cè)試區(qū)域的截圖進(jìn)行自動(dòng)化測(cè)試。從測(cè)試方法和系統(tǒng)的應(yīng)用效果分析,支持并行測(cè)試多臺(tái)不同操作系統(tǒng)的PC,可提高計(jì)算機(jī)軟件測(cè)試的效率。實(shí)際應(yīng)用中,向每臺(tái)PC的預(yù)設(shè)端口發(fā)送測(cè)試命令,各個(gè)PC并行監(jiān)聽預(yù)設(shè)端口,當(dāng)接收到測(cè)試命令之后,能夠開展自動(dòng)化測(cè)試,可提高軟件測(cè)試的效率,達(dá)到跨平臺(tái)測(cè)試的目的,妥善解決了不同系統(tǒng)的差異問題[1]。
(1)實(shí)現(xiàn)自動(dòng)化測(cè)試。從計(jì)算機(jī)軟件測(cè)試的需求分析,自動(dòng)化測(cè)試為主要內(nèi)容。傳統(tǒng)的人工測(cè)試難以避免存在不足,軟件自動(dòng)化測(cè)試技術(shù)可謂是應(yīng)運(yùn)而生。實(shí)際應(yīng)用中,采用自動(dòng)化測(cè)試技術(shù),主要是利用自動(dòng)化工具開展。實(shí)際上,軟件測(cè)試工具自身也是一種軟件,研究者將自動(dòng)化思想植入測(cè)試工具內(nèi),使其具備人們所需的功能,協(xié)助人類完成計(jì)算機(jī)軟件測(cè)試工作[2]。從未來的發(fā)展分析,隨著云計(jì)算的應(yīng)用和發(fā)展,將會(huì)改變軟件平臺(tái)架構(gòu),同時(shí)也會(huì)使得軟件測(cè)試模式發(fā)生變化。例如,改變計(jì)算機(jī)軟件測(cè)試的環(huán)境,由實(shí)體計(jì)算機(jī)轉(zhuǎn)到運(yùn)算服務(wù)器,能夠節(jié)約硬件成本,提高測(cè)試的效率,不過此項(xiàng)技術(shù)的實(shí)現(xiàn)還面臨很多的挑戰(zhàn),尤其是實(shí)際操作比較困難,還要克服很多技術(shù)難題才能滿足計(jì)算機(jī)軟件測(cè)試的需求。
(2)引入大數(shù)據(jù)技術(shù)。從計(jì)算機(jī)軟件測(cè)試的實(shí)際情況分析,通常要消耗很多的資源,如何提高資源的利用率是研究的重點(diǎn)[3]。一般來說,人們希望投入最少的資源,高效化完成計(jì)算機(jī)軟件測(cè)試。在傳統(tǒng)的軟件測(cè)試環(huán)境中難以實(shí)現(xiàn),主要是因?yàn)橘Y源的消耗和測(cè)試可靠性存在線性關(guān)系。不過,大數(shù)據(jù)技術(shù)的應(yīng)用,借助數(shù)據(jù)挖掘技術(shù)的優(yōu)勢(shì),實(shí)現(xiàn)對(duì)各類資源的高效化管理,能夠達(dá)到提高軟件測(cè)試效率的目的。利用大數(shù)據(jù)技術(shù),助力計(jì)算機(jī)軟件測(cè)試工作的開展,能夠優(yōu)化測(cè)試用例的選擇,高效化完成測(cè)試。除此之外,測(cè)試中產(chǎn)生的各類bug報(bào)告,采用大數(shù)據(jù)技術(shù)手段能夠?qū)崿F(xiàn)高效化分析,為計(jì)算機(jī)軟件測(cè)試提供更多的支持。從實(shí)現(xiàn)計(jì)算機(jī)軟件測(cè)試技術(shù)的創(chuàng)新和優(yōu)化角度分析,涉及到很多的難題和問題,需要加大相關(guān)技術(shù)人員的培養(yǎng),積極挖掘人力資源力量,助力測(cè)試技術(shù)的開發(fā),為計(jì)算機(jī)軟件測(cè)試的創(chuàng)新提供支持,全面提高計(jì)算機(jī)軟件質(zhì)量控制水平。
綜上,計(jì)算機(jī)軟件測(cè)試中采用測(cè)試技術(shù),可支持同時(shí)多系統(tǒng)測(cè)試,避免了傳統(tǒng)測(cè)試的缺陷,提高了測(cè)試的效率,并且能夠降低測(cè)試的成本。從測(cè)試的開展分析,構(gòu)建相應(yīng)的測(cè)試系統(tǒng),通過配置相應(yīng)的服務(wù)器和PC集,形成支持并行測(cè)試的系統(tǒng),滿足測(cè)試的需求,全面提高測(cè)試的效率和質(zhì)量。