摘要:文章結(jié)合實(shí)際工作需求,提出了一種測(cè)試用例復(fù)用設(shè)計(jì)方法和格式要求,使用本文提出的方法,可以縮短測(cè)試執(zhí)行的時(shí)間,更快地發(fā)現(xiàn)存在的問(wèn)題,極大地減少了測(cè)試用例的設(shè)計(jì)時(shí)間和使用量。
關(guān)鍵詞:軟件測(cè)試
測(cè)試用例
用例設(shè)計(jì)
用例復(fù)用
中圖分類號(hào):TP273+.4
文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1002-2422(2010)03-0104-02
測(cè)試樣式描述了測(cè)試設(shè)計(jì)的基本問(wèn)題,及時(shí)了解測(cè)試設(shè)計(jì)的最佳實(shí)踐。一個(gè)軟件測(cè)試用例的設(shè)計(jì)與其軟件的環(huán)境是密切相關(guān)的,軟件測(cè)試用例可以隨環(huán)境和應(yīng)用領(lǐng)域的不同而改變,而測(cè)試用例的設(shè)計(jì)是依據(jù)測(cè)試樣式進(jìn)行的。所謂測(cè)試用例,是指按照一定順序執(zhí)行的與測(cè)試目標(biāo)相關(guān)的一系列測(cè)試。
1測(cè)試用例設(shè)計(jì)原則
(1)基于需求的原則。應(yīng)按照測(cè)試級(jí)別的不同要求,設(shè)計(jì)測(cè)試用例。例如,單元測(cè)試依據(jù)詳細(xì)設(shè)計(jì)說(shuō)明,部件測(cè)試依據(jù)概要設(shè)計(jì)說(shuō)明,配置項(xiàng)測(cè)試依據(jù)軟件需求規(guī)格說(shuō)明,系統(tǒng)測(cè)試依據(jù)用戶需求(系統(tǒng)/子系統(tǒng)設(shè)計(jì)說(shuō)明、軟件開(kāi)發(fā)任務(wù)書(shū)等)。
(2)基于方法的原則。應(yīng)明確所采用的測(cè)試用例設(shè)計(jì)方法。為達(dá)到不同的測(cè)試充分性要求,應(yīng)采用相應(yīng)的測(cè)試方法,如等價(jià)類劃分、邊界值分析、錯(cuò)誤推測(cè)、因果圖、功能圖等方法。
(3)兼顧完整性和效率的原則,測(cè)試用例集應(yīng)兼顧測(cè)試的完整性和測(cè)試的效率;每個(gè)測(cè)試用例的內(nèi)容應(yīng)完整,具有可操作性。
(4)執(zhí)行的可重復(fù)性原則。應(yīng)保證測(cè)試用例執(zhí)行的可重復(fù)性。
2測(cè)試用例設(shè)計(jì)基本思路

在軟件測(cè)試中,測(cè)試結(jié)果要受到需求的詳細(xì)程度、測(cè)試條件、軟件的性能指標(biāo)、編程語(yǔ)言以及測(cè)試人員素質(zhì)的影響。因此,在設(shè)計(jì)測(cè)試用例時(shí)考慮的因素要比較全面,大致可按如下步驟進(jìn)行:
(1)深入理解軟件任務(wù)書(shū)和需求所規(guī)定的功能、性能,搞清楚軟件運(yùn)行的環(huán)境和性能指標(biāo)要求。
(2)由于實(shí)際運(yùn)行環(huán)境可能對(duì)被測(cè)軟件產(chǎn)生不同的影響,因此,應(yīng)事前與軟件設(shè)計(jì)人員進(jìn)行多次交流,詳細(xì)了解軟件實(shí)際運(yùn)行時(shí)可能出現(xiàn)的情況,以及軟件某些功能設(shè)計(jì)的出發(fā)思想,了解軟件設(shè)計(jì)的基礎(chǔ),確立軟件測(cè)試的側(cè)重點(diǎn),使設(shè)計(jì)出的測(cè)試用例更符合實(shí)際情況。
(3)要對(duì)照軟件的概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)認(rèn)真閱讀軟件的文本,了解軟件的結(jié)構(gòu)、流程和軟件的各功能模塊。
(4)根據(jù)軟件運(yùn)行的環(huán)境要求和現(xiàn)有的條件確定測(cè)試設(shè)備,擬定可行的測(cè)試計(jì)劃。依據(jù)測(cè)試計(jì)劃對(duì)軟件的功能進(jìn)行分解。
(5)針對(duì)劃分出的每個(gè)功能,采用不同的設(shè)計(jì)方法確定輸入條件,并根據(jù)所使用的設(shè)備和需求提出的技術(shù)指標(biāo),提出在不同輸入條件下會(huì)產(chǎn)生的預(yù)期輸出域值,規(guī)定偏差要求。
(6)對(duì)典型故障、時(shí)間特性、干擾條件狀態(tài)和中斷安全性等特定的項(xiàng)目進(jìn)行針對(duì)性測(cè)試。
3測(cè)試用例的復(fù)用
設(shè)計(jì)出好的測(cè)試用例是確保軟件測(cè)試質(zhì)量的前提,有效復(fù)用現(xiàn)有的測(cè)試用例更能提升軟件評(píng)測(cè)過(guò)程。目前很多評(píng)測(cè)中心,對(duì)測(cè)試用例的復(fù)用沒(méi)有引起足夠的重視。軟件評(píng)測(cè)往往時(shí)間緊張,客觀上也成了測(cè)試人員的借口,設(shè)計(jì)出來(lái)的測(cè)試用例,過(guò)于局限于本產(chǎn)品或本模塊使用,依賴性非常強(qiáng),根本就不利于升級(jí)或者拓展。要將所有的測(cè)試用例有效地組織起來(lái),使得測(cè)試用例集合里面的每一個(gè)測(cè)試用例都能夠獨(dú)立地運(yùn)行,這樣才能提高軟件測(cè)試用例的復(fù)用度。結(jié)合工作中的經(jīng)驗(yàn),傳統(tǒng)的測(cè)試用例設(shè)計(jì)有很多方法,看上去相互間沒(méi)有統(tǒng)一的結(jié)構(gòu)。所需要注意的是:能夠?qū)y(cè)試用例綜合起來(lái)分析,然后讓所有的測(cè)試用例組織在一起,具有統(tǒng)一的輸入、輸出接口,并且每個(gè)測(cè)試用例獨(dú)立性比較強(qiáng),這樣即使以后軟件運(yùn)行環(huán)境發(fā)生變化,測(cè)試用例還能夠繼續(xù)加以使用。測(cè)試用例獨(dú)立性強(qiáng),采用一致的結(jié)構(gòu),是測(cè)試用例復(fù)用度高的關(guān)鍵。圖1所示是面向復(fù)用的軟件測(cè)試模型。

軟件測(cè)試類型在GJB中有23種。包括文檔審查、代碼審查、靜態(tài)分析、代碼走查、邏輯測(cè)試、功能測(cè)試、性能測(cè)試、接口測(cè)試、人機(jī)交互界面測(cè)試、強(qiáng)度測(cè)試、余量測(cè)試、可靠性測(cè)試、安全性測(cè)試、恢復(fù)性測(cè)試、邊界測(cè)試、數(shù)據(jù)處理測(cè)試、安裝性測(cè)試、容量測(cè)試、互操作性測(cè)試、敏感性測(cè)試、標(biāo)準(zhǔn)符合性測(cè)試、兼容性測(cè)試和中文本地化測(cè)試等。在一個(gè)測(cè)試用例中,測(cè)試輸出結(jié)果的不同側(cè)重方向往往可以代表不同的測(cè)試類型。測(cè)試用例復(fù)用最簡(jiǎn)單的一種形式,即在單一測(cè)試任務(wù)中,使用單個(gè)測(cè)試用例完成多個(gè)測(cè)試類型的測(cè)試要求。例如在功能測(cè)試中,使用正常值的等價(jià)類輸入數(shù)據(jù)值測(cè)試,同時(shí)可以完成性能測(cè)試中處理精度和響應(yīng)時(shí)間等測(cè)試要求,而且需要使用軟件人機(jī)交互界面進(jìn)行輸入和顯示輸出,因此可以同時(shí)完成人機(jī)交互界面測(cè)試中的操作和顯示界面及界面風(fēng)格一致性和符合性測(cè)試。圖2所示是測(cè)試用例在不同測(cè)試類型中的復(fù)用關(guān)聯(lián)。
4結(jié)束語(yǔ)
在實(shí)際測(cè)試過(guò)程中實(shí)現(xiàn)軟件測(cè)試復(fù)用是有一定困難的。被測(cè)系統(tǒng)之間存在差異,在一個(gè)項(xiàng)目測(cè)試中的軟件測(cè)試用例要用在其它項(xiàng)目中,不是一件簡(jiǎn)單的事情。首先,測(cè)試用例要達(dá)到一定的數(shù)量,才能支持有效的復(fù)用,而這些測(cè)試用例的獲得依靠很高的投入和長(zhǎng)期的積累;其次,發(fā)現(xiàn)合適的測(cè)試用例也比較困難,測(cè)試人員往往難以從大數(shù)量的測(cè)試用例中找到合適的用例;再者,基于復(fù)用的軟件測(cè)試方法和軟件測(cè)試過(guò)程是一個(gè)新的研究實(shí)踐領(lǐng)域,需要大量新的理論、技術(shù)和環(huán)境的支持,目前這方面的研究成果和實(shí)踐經(jīng)驗(yàn)都十分有限;最后,軟件測(cè)試用例還面臨其它一些問(wèn)題,例如人為因素、管理因素和法律因素等。
軟件測(cè)試用例的設(shè)計(jì)是軟件測(cè)試中比較重要的一環(huán)。只有設(shè)計(jì)出更多更好地可復(fù)用測(cè)試用例,才可以更快更好的發(fā)現(xiàn)潛在的錯(cuò)誤與失效。使用最少的測(cè)試用例,實(shí)現(xiàn)最大的測(cè)試覆蓋,可復(fù)用度好,并且在需求分析階段提前展開(kāi)測(cè)試用例的設(shè)計(jì),是軟件測(cè)試的目標(biāo)。只有制定出完善的測(cè)試計(jì)劃,有效的測(cè)試用例,進(jìn)行測(cè)試結(jié)構(gòu)分析以及文檔管理,才能保證軟件測(cè)試的成功。