冒煙測試_(軟件)

在程序設計和軟件測試領域 ， 冒煙測試 （ 也包括信心測試 、 健全性測試 、 構建驗證測試 （ BVT ） 、 構建驗收測試 ） 是指初步地進行測試 ， 並以此展示一些簡單但足以影響發佈軟件版本的這一高級別的錯誤 。 冒煙測試是測試用例的子集 ， 測試主要爲了覆蓋了組件或系統的最重要功能 ， 並用於輔助評價一個軟件的主要功能是否正常運行 。 當使用冒煙測試判斷一個程序是否需要更深層次的 、 顆粒度更爲細小的測試時 ， 該測試也被稱爲入門測試 （ intake test ） 。 或者 ， 在測試部門對新版本程序進行測試之前 ， 冒煙測試用於自動化測試新版本是否可以正常運行 ， 是否值得測試 。 在DevOps範例中 ， 使用BVT步驟是持續集成成熟階段的標誌之一 。 例如 ， 冒煙測試可能會解決一些基本問題 ， 例如 “ 程序是否運行 ？ ” ， “ 用戶界面是否打開 ？ ” 或 “ 單擊事件是否有效 ？ ” 等 。 冒煙測試的目的在於確認程序是否嚴重到 ， 需要立即測試非必須的測試 。 如 《 Lessons Learned in Software Testing 》 所寫 ， “ 冒煙測試僅僅是在短時間廣泛地覆蓋產品功能 。 如果關鍵功能無法正常工作或關鍵bug尚未修復 ， 那麼你們的團隊就不需要浪費更多時間去安裝部署以及測試 。 則煙霧測試將在有限的時間內廣泛涵蓋產品功能 ， 不會浪費更多的時間來安裝或測試 ” 。 冒煙測試通常會快速地進行 ， 好處就是反饋也是很快 ， 相比之下 ， 更爲全面地套件測試通常會花費更長的時間 。 每日構建和冒煙測試是工業界公認的最佳實踐之一 。 測試人員在構建並更深一步的測試之前 ， 有必要進行冒煙測試 。 微軟聲稱 ， “ 在代碼進行審查之後 ， 冒煙測試是識別並修復軟件的性價比最高的方法 ” 。 冒煙測試 ， 可以是手動測試或自動工具進行冒煙測試 。 對於自動化工具測試 ， 構建工程的程序通常會順帶進行該測試 。 冒煙測試可以是功能測試或者單元測試 。 功能測試通常會使用各種輸入設備 。 從而執行完整的程序 。 單元測試則是針對單一功能 、 子例程 、 對象的方法 。 功能測試可以是腳本化的輸入 ， 也可以是自動化的鼠標事件 。 單元測試可以是實現代碼內部獨立功能 ， 也可以是通過調用的方式進行測試 。