郝愛語
摘要:隨著軟件系統(tǒng)規(guī)模和復(fù)雜度日益升高,越來越多的軟件項(xiàng)目明確提出軟件的高質(zhì)量要求。軟件企業(yè)也意識到,高質(zhì)量高可靠性軟件開發(fā)離不開軟件測試,測試貫穿于整個(gè)軟件開發(fā)過程。制定規(guī)范的軟件測試方案則是進(jìn)行軟件測試的核心環(huán)節(jié),但目前很多中小型軟件企業(yè)對此環(huán)節(jié)重視程度不夠,甚至把測試方案和測試計(jì)劃等同。據(jù)此本文系統(tǒng)地介紹了和軟件測試方案相關(guān)的重要理論,同時(shí)對測試方案和測試計(jì)劃進(jìn)行了對比分析,希望對從事測試工作的初學(xué)者具有一定的參考意義和指導(dǎo)價(jià)值。
關(guān)鍵詞:軟件測試測試方案測試計(jì)劃測試用例
0引言
目前,越來越多的軟件企業(yè)涉及高質(zhì)量高可靠性軟件項(xiàng)目的開發(fā),作為軟件質(zhì)量控制和保證軟件工程過程質(zhì)量的最有效方法,軟件測試在項(xiàng)目開發(fā)過程中的地位與日俱增。軟件測試的總目標(biāo)就是:確保軟件的質(zhì)量。如何有序開展測試工作從而保證軟件高質(zhì)量高可靠性,已經(jīng)成為眾多企業(yè)面臨的一個(gè)重要課題。本文主要討論了測試過程的核心測試方案的相關(guān)理論和技術(shù)。
1軟件測試方案概述
1.1測試方案概念測試方案屬于軟件工程的范疇,制定合理規(guī)范的測試方案是軟件測試的核心環(huán)節(jié)。測試方案是描述所測軟件的測試特性、測試方法、測試用例設(shè)計(jì)、測試代碼設(shè)計(jì)、測試環(huán)境規(guī)劃以及測試工具設(shè)計(jì)和選擇的一種策略與方法。測試方案有助于軟件項(xiàng)目成員理解和執(zhí)行測試過程中的各項(xiàng)活動(dòng),同時(shí)測試方案也有助于測試活動(dòng)的管理。
1.2測試方案目標(biāo)測試方案描述和定義了軟件系統(tǒng)進(jìn)行測試的策略和方法。其主要目標(biāo)是:在完整的軟件開發(fā)周期中,有效安排和管理測試工作,建立一個(gè)全面的測試計(jì)劃,定義該軟件在不同階段的測試性質(zhì)和測試程度,協(xié)調(diào)測試工作使其按照進(jìn)度表有序進(jìn)行,并按期接收應(yīng)該交付的文檔和作品。
1.3測試領(lǐng)域發(fā)展目前,測試領(lǐng)域的需求和應(yīng)用非常廣泛,所應(yīng)用的技術(shù)從軟件技術(shù)到模擬數(shù)字、從電子商務(wù)到低頻高頻,微波、從測試到診斷、從維修到保障,方方面面都在快速發(fā)展,展現(xiàn)在我們面前的專業(yè)詞匯,如儀器、虛擬儀器、測試、虛擬測試、虛擬試驗(yàn)、診斷與維修、預(yù)測與評估、BIT等日新月異,這些都是測試領(lǐng)域新技術(shù)發(fā)展和應(yīng)用的載體。針對不同的測試對象,制定測試方案的策略和重點(diǎn)也不同。
2測試方案和測試計(jì)劃
目前,仍然有學(xué)習(xí)者誤認(rèn)為測試方案就是測試計(jì)劃。實(shí)際中,由于各個(gè)測試項(xiàng)目規(guī)模和范圍的不同,一些軟件企業(yè)的測試工作往往都是在制定測試計(jì)劃之后直接開始測試設(shè)計(jì)以及測試執(zhí)行,這就給初學(xué)者們造成一定的誤解,以為測試計(jì)劃就等同于測試方案,然而這種想法是錯(cuò)誤的,測試方案不同于測試計(jì)劃,它和測試計(jì)劃有著明顯的區(qū)別。當(dāng)然也存在一定關(guān)聯(lián)。
2.1定義不同測試計(jì)劃是對測試過程的組織、資源、原則等進(jìn)行的規(guī)定和約束。測試計(jì)劃制訂測試過程各個(gè)階段的任務(wù)以及時(shí)間進(jìn)度等安排,提出對各項(xiàng)任務(wù)的評估、風(fēng)險(xiǎn)分析和需求管理。而測試方案則是描述所測軟件的測試特性、測試方法、測試用例設(shè)計(jì)、測試代碼設(shè)計(jì)、測試環(huán)境規(guī)劃以及測試工具設(shè)計(jì)和選擇的一種策略與方法。
2.2層次不同測試計(jì)劃是管理層面的,從組織管理的角度規(guī)劃涮試活動(dòng).而涮試方案是枝術(shù)層面的.從技術(shù)的角度規(guī)劃測試活動(dòng)。
2.3進(jìn)度不同測試過程分為四個(gè)階段:單元測試、集成測試、系統(tǒng)測試和驗(yàn)收測試。而每個(gè)階段都要按照測試計(jì)劃,測試設(shè)計(jì).測試實(shí)現(xiàn),測試執(zhí)行的步驟來實(shí)現(xiàn)。測試計(jì)劃說明書是測試計(jì)劃階段的產(chǎn)品,而測試方案則是測試設(shè)計(jì)階段的產(chǎn)品。其中每個(gè)階段的執(zhí)行必須是在上層階段產(chǎn)品通過評審后才能開始。
2.4內(nèi)容不同測試方案和測試計(jì)劃包含內(nèi)容上的區(qū)別是二者的本質(zhì)區(qū)別。
2.4.1測試方案的內(nèi)容:明確策略,細(xì)化測試特性(形成測試子項(xiàng)),測試用例的規(guī)劃,測試環(huán)境的規(guī)劃,自動(dòng)化測試框架的設(shè)計(jì)以及測試工具的設(shè)計(jì)和選擇。
2.4.2測試計(jì)劃的內(nèi)容:①明確測試組織的組織形式;②測試組織和其他部門關(guān)系以及責(zé)任劃分;③測試組織內(nèi)的機(jī)構(gòu)和責(zé)任安排;④明確測試的測試對象(明確測試項(xiàng),用于后面劃分任務(wù),估計(jì)工作量等):⑤完成測試的需求跟蹤;⑥明確測試中需要遵守的原則;⑦明確測試工作任務(wù)分配是測試計(jì)劃的核心:a進(jìn)行測試任務(wù)劃分b進(jìn)行測試工作量估計(jì)c人員資源和硬件資源分配d明確任務(wù)的時(shí)間和進(jìn)度安排e風(fēng)險(xiǎn)的估計(jì)和回避措施f明確測試結(jié)束后應(yīng)交付的測試工作產(chǎn)品。
由上可以看出測試方案和測試計(jì)劃有著明顯區(qū)別,但實(shí)際上在一些規(guī)模較小的軟件企業(yè)中,由于受人力資源和資金成本的限制,制定測試方案和測試計(jì)劃的界限并不明顯,有時(shí)會(huì)在測試計(jì)劃中會(huì)包含一些測試方案的內(nèi)容,即測試環(huán)境規(guī)劃、測試工具選擇以及測試用例設(shè)計(jì)方法等,也就是說對于小規(guī)模軟件項(xiàng)目,其測試計(jì)劃和測試方案有時(shí)會(huì)結(jié)合在一起。但這種做法是不合適的,一般對于大型軟件公司,針對大規(guī)模項(xiàng)目,必須把測試方案和測試計(jì)劃的制定分開進(jìn)行,這樣更加有利于整個(gè)測試項(xiàng)目運(yùn)作和項(xiàng)目組之間的交流,更會(huì)起到保障軟件質(zhì)量的作用。
總而言之,測試方案需要在測試計(jì)劃的指導(dǎo)下進(jìn)行,測試計(jì)劃提出“做什么”,而測試方案明確“怎么做”。二者既有區(qū)別又有聯(lián)系,概念總歸是概念,讀者可以不必拘泥于此,根據(jù)軟件項(xiàng)目規(guī)格大小以及實(shí)際應(yīng)用環(huán)境,測試人員應(yīng)該具體問題具體分析。
3結(jié)束語
以上筆者從實(shí)踐出發(fā)對軟件測試方案的相關(guān)知識進(jìn)行了略粗淺的分析和研究。需要說明的是目前對軟件測試以及如何結(jié)合具體實(shí)際項(xiàng)目制定合理的測試方案仍是一個(gè)頗不成熟的領(lǐng)域,缺少一種整體性體系化的方法。這里,筆者作為教育戰(zhàn)線中一名教師所做的分析雖然已經(jīng)竭盡所能,但卻不能保證將如何有效制定測試方案的問題研究得很深刻,這也是本人今后努力鉆研的方向和課題,希望此文能為相關(guān)企業(yè)和測試人員制定測試測試方案起到一定的參考價(jià)值和指導(dǎo)作用。