測試用例將完全不能運行。為了保證測試用例庫中測試用例的有效性,必須對測試用例庫進(jìn)行
維護。同時(shí),被修改的或新增添的軟件功能,僅僅靠重新運行以前的測試用例并不足以揭示其
中的問(wèn)題,有必要追加新的測試用例來(lái)測試這些新的功能或特征。因此,測試用例庫的維護工
作還應包括開(kāi)發(fā)新測試用例,這些新的測試用例用來(lái)測試軟件的新特征或者覆蓋現有測試用例
無(wú)法覆蓋的軟件功能或特征。
測試用例的維護是一個(gè)不間斷的過(guò)程,通??梢詫④浖_(kāi)發(fā)的基線(xiàn)作為基準,維護的主要
內容包括下述幾個(gè)方面。
(1)刪除過(guò)時(shí)的測試用例
因為需求的改變等原因可能會(huì )使一個(gè)基線(xiàn)測試用例不再適合被測試系統,這些測試用例就
會(huì )過(guò)時(shí)。例如,某個(gè)變量的界限發(fā)生了改變,原來(lái)針對邊界值的測試就無(wú)法完成對新邊界測
試。所以,在軟件的每次修改后都應進(jìn)行相應的過(guò)時(shí)測試用例的刪除。
(2)改進(jìn)不受控制的測試用例
隨著(zhù)軟件項目的進(jìn)展,測試用例庫中的用例會(huì )不斷增加,其中會(huì )出現一些對輸入或運行狀
態(tài)十分敏感的測試用例。這些測試不容易重復且結果難以控制,會(huì )影響回歸測試的效率,需要
進(jìn)行改進(jìn),使其達到可重復和可控制的要求。
(3)刪除冗余的測試用例
如果存在兩個(gè)或者更多個(gè)測試用例針對一組相同的輸入和輸出進(jìn)行測試,那么這些測試用
例是冗余的。冗余測試用例的存在降低了回歸測試的效率。所以需要定期的整理測試用例庫,
并將冗余的用例刪除掉。
(4)增添新的測試用例
如果某個(gè)程序段、構件或關(guān)鍵的接口在現有的測試中沒(méi)有被測試,那么應該開(kāi)發(fā)新測試用
例重新對其進(jìn)行測試。并將新開(kāi)發(fā)的測試用例合并到基線(xiàn)測試包中。
通過(guò)對測試用例庫的維護不僅改善了測試用例的可用性,而且也提高了測試庫的可信性,
同時(shí)還可以將一個(gè)基線(xiàn)測試用例庫的效率和效用保持在一個(gè)較高的級別上。
2、回歸測試包的選擇
在軟件生命周期中,即使一個(gè)得到良好維護的測試用例庫也可能變得相當大,這使每次回
歸測試都重新運行完整的測試包變得不切實(shí)際。一個(gè)完全的回歸測試包括每個(gè)基線(xiàn)測試用例,
時(shí)間和成本約束可能阻礙運行這樣一個(gè)測試,有時(shí)測試組不得不選擇一個(gè)縮減的回歸測試包來(lái)
完成回歸測試。
回歸測試的價(jià)值在于它是一個(gè)能夠檢測到回歸錯誤的受控實(shí)驗。當測試組選擇縮減的回歸
測試時(shí),有可能刪除了將揭示回歸錯誤的測試用例,消除了發(fā)現回歸錯誤的機會(huì )。然而,如果
采用了代碼相依性分析等安全的縮減技術(shù),就可以決定哪些測試用例可以被刪除而不會(huì )讓回歸
測試的意圖遭到破壞。
選擇回歸測試策略應該兼顧效率和有效性?xún)蓚€(gè)方面。常用的選擇回歸測試的方式包括:
(1)再測試全部用例
選擇基線(xiàn)測試用例庫中的全部測試用例組成回歸測試包,這是一種比較安全的方法,再測
試全部用例具有最低的遺漏回歸錯誤的風(fēng)險,但測試成本最高。全部再測試幾乎可以應用到任
何情況下,基本上不需要進(jìn)行分析和重新開(kāi)發(fā),但是,隨著(zhù)開(kāi)發(fā)工作的進(jìn)展,測試用例不斷增
多,重復原先所有的測試將帶來(lái)很大的工作量,往往超出了我們的預算和進(jìn)度。
(2)基于風(fēng)險選擇測試
可以基于一定的風(fēng)險標準來(lái)從基線(xiàn)測試用例庫中選擇回歸測試包。首先運行最重要的、關(guān)
鍵的和可疑的測試,而跳過(guò)那些非關(guān)鍵的、優(yōu)先級別低的或者高穩定的測試用例,這些用例即
便可能測試到缺陷,這些缺陷的嚴重性也僅有三級或四級。一般而言,測試從主要特征到次要
特征。
(3)基于操作剖面選擇測試
如果基線(xiàn)測試用例庫的測試用例是基于軟件操作剖面開(kāi)發(fā)的,測試用例的分布情況反映了
系統的實(shí)際使用情況?;貧w測試所使用的測試用例個(gè)數可以由測試預算確定,回歸測試可以?xún)?yōu)
先選擇那些針對最重要或最頻繁使用功能的測試用例,釋放和緩解最高級別的風(fēng)險,有助于盡
原文轉自:http://www.uml.org.cn/Test/200463028.htm