1. 程式人生 > >冒煙測試和BAT測試

冒煙測試和BAT測試

BAT,Build Acceptance Testing工作版本可接受測試。新工作版本正式測試前進行的一項快速測試過程,目的是保證軟體的基本功能和內容正確完整,具有可測試性,經過BAT測試後,就進入了正軌測試階段。

冒煙測試(smoke test)在測試中發現問題,找到了一個Bug,然後開發人員會來修復這個Bug。這時想知道這次修復是否真的解決了程式的Bug,或者是否會對其它模組造成影響,就需要針對此問題進行專門測試,這個過程就被稱為Smoke Test。在很多情況下,做Smoke Test是開發人員在試圖解決一個問題的時候,造成了其它功能模組一系列的連鎖反應,原因可能是隻集中考慮了一開始的那個問題,而忽略其它的問題,這就可能引起了新的Bug。Smoke Test優點是節省測試時間,防止build失敗。缺點是覆蓋率還是比較低。
  冒煙測試是自由測試的一種。
  冒煙測試(smoke testing),據說是微軟起的名字。在《微軟專案求生法則》一書第14章“構建過程”關於冒煙測試,就是開發人員在個人版本的軟體上執行目前的冒煙測試專案,確定新的程式程式碼不出故障。
  冒煙測試的名稱可以理解為該種測試耗時短,僅用一袋煙功夫足夠了。也有人認為是形象地類比新電路板功基本功能檢查。任何新電路板焊好後,先通電檢查,如果存在設計缺陷,電路板可能會短路,板子冒煙了。
  冒煙測試的物件是每一個新編譯的需要正式測試的軟體版本,目的是確認軟體基本功能正常,可以進行後續的正式測試工作。冒煙測試的執行者是版本編譯人員。
  在一般軟體公司,軟體在編寫過程中,內部需要編譯多個版本(Builds),但是隻有有限的幾個版本需要執行正式測試(根據專案開發計劃),這些需要執行的中間測試版本,在剛剛編譯出來後,軟體編譯人員需要進行基本效能確認測試,例如是否可以正確安裝/解除安裝,主要功能是否實現,是否存在嚴重宕機或資料嚴重丟失等Bug。如果通過了該測試,則可以根據正式測試文件進行正式測試。否則,就需要重新編譯版本,再次執行版本可接收確認測試,直到成功。
  新版本的基本功能確認檢查的測試,有的公司成為版本健康檢查(Build Sanity Check)。對於編譯的本地化軟體新版本,除了進行上面提到的各種測試檢查,還要檢查是否在新的本地化版本中正確包含了全部應該本地化的檔案。可以通過採用檔案和目錄結構比較工具,首先比較源語言版本和本地化版本的檔案和目錄中的檔案數目、檔名稱和檔案日期等,這個過程稱為版本映象檢查(Build Image Check)。其次,分別安裝源語言版本和本地化版本,比較安裝後的檔案和目錄結構中的檔案數目、檔名稱和檔案日期等,這個過程稱為版本安裝檢查(Build Installing Check)。