軟件測試之每日構造與冒煙測試 軟件測試方法
如果你想創建一個只包含一個源程序文件的簡單程序,那么你只需要編譯、連接那一個文件就可以了。如果是一個團隊項目組,有著許多甚至上千個源程序文件,那么要創建一個可執行程序的過程就變得更復雜、更耗時。你必須用各種各樣的組件將程序逐步建立起來。
在微軟或其它一些軟件公司中慣例是:每日構造并做“冒煙測試”。每天都對已完成的源程序進行編譯,然后連接組合成可執行的程序,并做“冒煙測試”,以簡單的檢查該執行程序在運行時是否會“冒煙”。
帶來的好處
雖然這是一個非常簡單的過程,但卻有非常重要的意義:
1、能最小化集成風險
項目組可能遇到的一個很大的風險是,項目組成員根據不同的系統功能各自開發不同的代碼,但是當這些代碼集成為一個系統的時候,也許系統完成不了預期的功能。這種風險的發生取決于項目中的這種不兼容性多久才被發現,由于程序界面已經發生了變化,或者系統的主要部分已經被重新設計和重新實現了,相應的排錯工作將非常困難和耗時。極端情況下,集成的錯誤可能回導致項目被取消掉。每日構造和冒煙測試可以使這種集成錯誤變得非常小,而且便于解決,防止了很多集成問題的產生。
2、能減小產品低質量的風險
這種風險是和集成不成功、集成出錯相關聯的。每天對集成的代碼做一些少量的冒煙測試,即可杜絕項目中那些基本的質量問題。通過這種方式,使系統達到一種周知的良好狀態,維護這樣的系統可以防止系統逐步惡化到耗費大量時間排查質量問題的地步。
3、能簡單化錯誤診斷
當系統每天都進行build和測試時,系統任何一天發生的錯誤都能夠變得十分精細,便于排查。比如在17日系統還運行正常,18日就出錯了,那么只需要檢查這兩次build之間的代碼變化就可以了。
4、能極大鼓舞項目組的士氣
看到產品的不斷成長,能夠極大的鼓舞項目組的士氣,有時甚至不管這個產品到底用來做什么。開發人員可能會為系統顯示了一個矩形而感到激動。通過每日構造,產品每天進步一點點,保證項目士氣的持續高漲。
進行每日構造和冒煙測試
雖然說這是一個簡單枯燥的活,每天進行build,每天進行測試,但也有著一些值得注意的細節:
原文轉自:http://www.anti-gravitydesign.com