展召英
摘 要:在當(dāng)前時代,軟件測試開始受人們的關(guān)注,此時怎樣通過技術(shù)方法提升測試的質(zhì)量就成為了行業(yè)中非常重視的一個話題。文章測試的定義為基礎(chǔ),對如何以軟件測試性設(shè)計為中心、合理運用軟件測試技術(shù)來提升軟件測試質(zhì)量提出了自己的看法。
關(guān)鍵詞:軟件測試;測試性設(shè)計;測試質(zhì)量
一個軟件產(chǎn)品的品質(zhì)到底是怎樣的主要在于它的開發(fā)活動開展的如何。測試是其生存的一個非常關(guān)鍵的時期,目前非常受人們的關(guān)注。只有通過測試才可以確保其品質(zhì),才能夠保證可靠性好,同時它還能夠驗證軟件能不能夠?qū)崿F(xiàn)預(yù)估的目的。目前測試已經(jīng)不單純的存在于開發(fā)的工作中,它已經(jīng)貫穿到總的研發(fā)步驟中,開展測試的時間越靠前,總體的開發(fā)費用就會越少。通過很多的統(tǒng)計資料我們得知,測試的活動量在總的開發(fā)工作中占據(jù)了大約百分之四十,在特殊時期,有時候會超過別的步驟所需費用的好幾倍,之所以耗費如此多的財力和時間來開展該項工作目的只有一個就是提升軟件的品質(zhì)以及穩(wěn)定性。
1 何為軟件測試
1.1 軟件測試
它的目的是為了分析存在的錯誤。換句話講,它是結(jié)合開發(fā)時期的要求以及程序的結(jié)構(gòu)而設(shè)計得到的一個測試案例,然后結(jié)合該案例的運作情況來得知存在的錯誤的一個步驟。
1.2 軟件測試用例
測試用例實際上是對軟件運行過程中所有可能存在的目標(biāo)、運動、行動、環(huán)境和結(jié)果的描述。測試用例是測試組織的最小單位,指對一項特定的軟件產(chǎn)品進行測試任務(wù)的描述,體現(xiàn)測試方案、方法、技術(shù)和策略。內(nèi)容包括測試目標(biāo)、測試環(huán)境、輸入數(shù)據(jù)、測試步驟、預(yù)期結(jié)果、測試腳本等,并最終形成文檔。對于該項測試活動來講,它的中心內(nèi)容是不斷的設(shè)計并且落實這些用例。在選取用例的時候我們可以看成是從繁瑣的輸入組合中挑選出那些能夠得知錯誤的組合。所以應(yīng)該以抽象方法來保證測試更為精準(zhǔn)。
1.3 測試用例庫
任何一個合理的測試通常會使用超過一個的用例,工作者一般要編訂很多的用例才可以對一個具體的軟件比對分析,我們把此類有關(guān)聯(lián)的用例為一個測試用例集。把很多的用例放到庫里,然后進行有效分類,這樣有助于后續(xù)的使用,能夠?qū)栴}的發(fā)現(xiàn)幾率提升。
2 提升測試品質(zhì)的措施
2.1 采用測試性設(shè)計技術(shù)
目前來看,該測試措施是僅有的一個能夠?qū)崿F(xiàn)目的的方法了。不過在測試的時候,因為很多緣由的存在導(dǎo)致了測試變得很困難,有時候還不能有效測試。為了改善這種現(xiàn)象,在設(shè)計的時候要切實的遵照測試性理念,經(jīng)由變幻代碼或是其他的一些措施來盡可能的提升它的可測試特征。
(1)測試驅(qū)動設(shè)計。這種設(shè)計就是直接把軟件需求變成測試代碼。當(dāng)明確了測試性能規(guī)定之后,要進行代碼編訂工作。要先進行驗收測試,然后開展單元的測試,最主要的是在開發(fā)的時候積極的修正處理。(2)所有的操作都要對應(yīng)具體的措施,確保措施的可行性好。通常都是一些小規(guī)模的措施,使用這些措施能夠確保調(diào)用的時候更為便利。(3)顯示與控制分離。把代碼移到GUI視圖的外面,各種 GUI 動作就能成了模型上的簡單方法調(diào)用。此時在改動程序的時候不會對試圖產(chǎn)生負面效果,而且這樣更加的易于被人們認可。(4)針對那些或許會成為參數(shù)的類應(yīng)該設(shè)置接口。以此來闡述外在程序組合獲釋在應(yīng)該變換接口的時候得到生成空類,這樣就可以當(dāng)成是參數(shù)輸入了。
2.2 選擇合適的測試管理模型
我們把系統(tǒng)功能的具體表現(xiàn)稱為模型?;谀P偷臏y試主要考慮系統(tǒng)的功能,可以認為是功能測試的一種。測試模型體現(xiàn)了被測試系統(tǒng)的最本質(zhì)的功能關(guān)系。其較之于系統(tǒng)要更加容易研發(fā)。任何能夠運作的模型都要確保其可以提供充足的信息。因此要保證模型合乎如下一些規(guī)定才可以。第一,規(guī)定其應(yīng)該是一個具體測試的十分精準(zhǔn)的體現(xiàn),要體現(xiàn)出檢查用到的全部特點。第二,應(yīng)該能抽象的顯示出細節(jié)內(nèi)容。第三,能夠體現(xiàn)出全部事件以及全部的活動。第四,能夠體現(xiàn)出系統(tǒng)的所有狀態(tài),只有這樣才能夠通過可知的措施來明確已經(jīng)達到或是尚未達到的狀態(tài)。
2.3 使用恰當(dāng)?shù)臏y試科技
目前的測試措施種類非常多,都有著一定的優(yōu)缺點。不過任何一個措施都不能夠體現(xiàn)出全部的測試規(guī)定。所以要積極的分析這些措施,明確其存在的優(yōu)點和缺陷,結(jié)合體系的規(guī)定來細致的組合,通??蓮娜缦聝蓚€層次中入手:
2.3.1 從代碼的特性角度出發(fā)展開測試
(1)單元測試:按照代碼的單元組成逐個進行測試。(2)功能測試:按照軟件的功能或特性逐個進行測試。(3)系統(tǒng)測試:對完整的代碼進行編譯和連接,以檢查程序的主要功能能否達到預(yù)期目標(biāo)。(4)回歸測試:對以前修復(fù)過的 Bug 重新進行測試, 看該 Bug 是否會重新出現(xiàn)。值得注意的是,回歸測試并不是軟件測試的一個獨立階段。
2.3.2 從用戶的角度出發(fā)展開測試
(1)配置測試: 從用戶的使用出發(fā)進行多方面的測試。(2)兼容性測試:主要考慮軟件和操作系統(tǒng)的兼容性問題。(3)壓力測試:在各種極限情況下對產(chǎn)品進行測試,以檢查產(chǎn)品的長期穩(wěn)定性。(4)性能測試:測試是保證程序具有良好的性能,能否達到預(yù)期的性能指標(biāo)。(5)文檔和幫助文件測試:對文檔和幫助文件進行檢測,保證用戶可以通過學(xué)習(xí)文檔和幫助文件正常使用產(chǎn)品。(6)Alpha 和 Beta 測試:在正式發(fā)布產(chǎn)品之前將軟件測試版發(fā)送給用戶,讓用戶在使用中找到能夠存在的 Bug或者反饋相關(guān)信息,以便在正式版中得到解決。
2.4 建立可復(fù)用的測試用例庫
在測試的時候得到的那些用例,對于提升軟件的品質(zhì)有著非常關(guān)鍵的意義,其復(fù)用的意義更是突出。在測試的時候要設(shè)置以復(fù)用為前提的用例,而且通過有效的管理措施,來提升其功效。
(1)基于復(fù)用的目的,對所使用的測試用例進行統(tǒng)一的建模組織,有效地將測試用例收集到測試用例庫中,并按照行業(yè)項目等進行多級合理的分類、組織、存儲。對采用不同方式描述的測試用例,將分別實現(xiàn)不同程度的復(fù)用。(2)對庫里的用例合理的管控,經(jīng)由提供的查詢措施,來保證復(fù)用性,對于不一樣的類型的用例開展復(fù)用次數(shù)的記載,這樣能夠幫助工作者獲取有用的信息內(nèi)容,在確保品質(zhì)的背景之下,提升了測試的功效。(3)對庫里的用例進行合理的復(fù)用,經(jīng)由查詢用例,獲取具體的信息,對于不同的用例使用不一樣的復(fù)用模式來開展復(fù)用活動。
3 結(jié)束語
筆者站在技術(shù)的層次上論述了提升測試品質(zhì)的措施,該措施是將軟件的測試性設(shè)計當(dāng)成是關(guān)鍵點,結(jié)合有效的測試措施來提升品質(zhì)的一個實用性的舉措。不過此處要注意的是,測試工作者的能力高低會對測試的品質(zhì)產(chǎn)生一定的影響,這就要求相關(guān)的工作者在平時工作的時候要注意提升自身的能力。
參考文獻
[1]宋駿禮.基于行為的軟件測試過程模型及其應(yīng)用研究[C].華中科技大學(xué)論文集,2007.
[2]朱鴻,金凌紫.軟件質(zhì)量保障與測試[M].北京:北京科學(xué)出版社,2004.
[3]蘭雨晴,高靜譯.William E·Perry.軟件測試的有效方法[M].北京:北京機械工業(yè)出版社,2004.