BVT與冒煙測試

【BVT的釋義】

BVT的全稱是Build Verification Test。可以說這個全稱就是BVT的定義了。

BVT只驗證build構建的成功與失敗,不深入測試構建好的build的功能、性能等等。

BVT是在所有開發工程師都已經檢入自己的代碼,項目組編譯生成當天的版本之後進行,主要目的是驗證最新生成的軟件版本在功能上是否完整,主要的軟件特性是否正確。如無大的問題,就可以進行相應的功能測試。BVT優點是時間短,驗證了軟件的基本功能。缺點是該種測試的覆蓋率很低。因爲運行時間短,不可能把所有的情況都測試到。

【BVT的執行】

在每日構建的環境裏,每個 daily build 構建完成時都要執行 BVT。對於 daily build 以外的每個版本和微版本,構建完成時也要執行 BVT。

  BVT  可以手動執行。版本的構建是相對穩定的過程,因此 BVT 基本上是軟件測試中最早實現全面自動化的測試。現在絕大多數版本構建工具都附帶 BVT 功能。

  BVT 最基礎的任務是進行文件版本的比對。伴隨開發進程,軟件功能越來越固化,BVT 有時會在不影響最基本功能的基礎上加入一些成熟的自動化測試腳本。

【BVT 對後續測試工作的影響】

  BVT 是集成測試的一道門檻,只有通過了 BVT 的 build 纔可以進入後面的集成測試過程。

  • BVT 結果成功的 build —— 表明該 build 構建成功,交付集成測試,但不一定被測試。

  • BVT 結果失敗的 build —— 表明該 build 構建失敗,不交付集成測試;提交 BVTBug,並按照 Bug 流程解決此 Bug。

  • 未經 BVT 的 build —— 不得提交集成測試            

Smoke Testing是從電路板測試得來的,當電路板做好以後,首先會加電測試,如果電路板沒有冒煙再進行其它測試,如果冒煙了就說明這個電路板基本的功能(加電)都沒達到,那其他的功能也就沒辦法測了。軟件測試中的冒煙測試,是對軟件基本的功能進行測試,目的是確認軟件基本的功能正常,保證軟件系統能跑的起來,如果基本功能不正常的話,就沒有辦法進行後續的測試,所以測試人員測試的版本必須首先通過冒煙測試的考驗。

【BVT 不同於 Smoke Testing】

  BVT 所做的測試內容很淺,這一特徵似乎符合 Smoke Testing 的定義;但是 BVT 只驗證 build 的構建情況,這一點與 Smoke Testing 截然不同,因此二者是完全不同的測試。另外:

  • BVT 只在 build 構建完成時進行;Smoke Testing 是各個階段都有的測試。
  • 儘管 BVT 可以加入自動測試腳本並執行少量固定的自動化測試,但 Smoke Testing 與 build 的驗證無關。
  • BVT 的結果直接決定新構建的 build 是否交付後續測試;Smoke Testing 不影響其他日常測試工作。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章