商業環境中,加快開發周期以及提高軟件質量變得越來越重要,而且低質量軟件帶來的風險也越大。測試是軟件開發組織中最重要的用于控制這些風險的手段。然而,盡管很多事業部都已經組建了測試團隊,依然經常會由于缺陷數量不能呈收斂狀態而陷入時間和成本無法控制的困境。以下列出的問題只是實際項目中遇到的問題的一小部分:
● 即使只有測試執行占據項目的關鍵路徑,但是測試執行階段依舊耗時比較長,測試對象質量不符合要求。
● 各事業部存在形式上的測試規程,但是對于每項測試活動如何做,達到什么樣的水平卻沒有明確的指導。
● 即使為測試計劃和測試設計預留了充分的時間,釋放后仍出現大量缺陷。
● 對測試對象的質量不能做到深入認識
以提高測試質量和效率為目的,我們今年針對2個試點事業部進行了測試體系能力評估。在評估中我們發現,除了外部因素和個人能力以外,測試內部很多管理因素如:測試策劃、測試策略制定、測試過程管理、測試方法體系等方面都存在一些問題。
測試的最終目的在于控制風險。當對軟件產品進行測試時,要問我們承擔了哪些風險,以及為了降低這些風險需要采取哪些措施。如果不希望在實際操作時才知道這些問題的答案,那么我們需要一個良好可靠的測試過程。也就是說,我們需要一個結構化的測試方法、組織和基礎設施,以一種可控制的方式,使我們能夠對軟件系統的狀態和相關的風險有持續的認識。根據這些認識,組織才可以做出更好的決定以及有效控制風險。
由此,我們介紹Sogeti開發的TMap測試生命周期模型來幫助事業建立一套完整規范的測試方法體系,從而更快地發布復雜而高質量的軟件。
測試執行只是測試工作的一小部分
目前測試組織的一個普遍狀態是忽略了測試計劃和測試設計的重要性。測試不僅僅是在電腦屏幕前執行測試用例。真正進行測試執行之前,過程早期階段的計劃和準備活動都是必須的,這才會使得項目關鍵路徑上的測試過程盡可能的短。我們看一個冰山的例子(圖表1),通常我們能夠看見的僅僅是冰山的一角,冰山中更大的部分則隱藏在海面以下。測試工作與冰山類似,通常測試工作中明顯可見的測試執行活動僅僅是露在海面以上的部分,平均來說只占測試活動的40%。而其他冰山以下的部分——計劃和準備工作——平均分別占用測試工作的20%和40%。
然而大多數測試組織并沒有意識到這樣的問題。事實上,測試的計劃和準備活動不但能夠節省測試工作的整體時間支出,更重要的是能夠為測試執行做好充分的準備工作,從而使測試執行的部分盡少占據開發項目的關鍵路徑。在有技術(測試自動化)支持的情況下,相對于測試策劃和準備活動,測試執行的時間則能夠更加縮短。TMap測試生命周期正是基于這樣的思想建立起來的。
TMap 測試生命周期介紹
TMap生命周期模型是一個通用模型。它能夠適用于所有類型的測試,并且能夠與開發生命周期模型同時使用。該生命周期模型將測試活動分成了7個階段(圖表2):計劃、控制、安裝和維護基礎設施、準備、設計、執行和結束。其中每一階段又進一步劃分成一些具體的活動。當然,只有在對質量要求非常高的情況下,才需要執行所有的活動。通常情況下,針對不同的測試級別可以對測試活動進行適當剪裁。
在計劃(Planning)階段,測試主管制定一個能夠充分完成測試任務的方法,并得到客戶認可,也要將計劃的方法記在測試計劃中。在控制(Control)階段,執行和監控測試計劃中規定的活動,并對其進行必要的調整。建立和維護基礎設施(Setting up and maintaining infrastructure)階段著眼于提供TMap中不同階段和活動需要用到的測試基礎設施。準備(Preparation)階段的目的是獲取測試依據,與客戶就條件和用例設計的質量達成一致。 測試用例或測試腳本要在測試設計(Specification)階段完成,并且在測試執行(Execution)階段被執行。測試執行的結果為對象的質量提供了深入了解。在測試結束(Completion)階段,要對測試任務進行總結。這個提供了從項目實踐中吸取經驗教訓的機會,此外這些活動的執行確保了產品復用。
在以下的章節中,我們將簡要介紹每個階段的活動。附表中列出了不同測試階段的所有測試活動。
原文轉自:http://www.spasvo.com/news/html/2013624133455.html