软件质量保证与测试——Smoke Test
Smoke Test
冒煙測試(smoke testing),據(jù)說是微軟起的名字。
初接觸軟件測試的時(shí)候肯定會(huì)接觸冒煙測試,回歸測試這些測試方式的術(shù)語,今天我們討論下冒煙測試。
什么是冒煙測試?
發(fā)現(xiàn)BUG后開發(fā)人員fix bug后。測試人員針對該問題進(jìn)行測試,冒煙測試的成功與否關(guān)系到下一步系統(tǒng)測試能否進(jìn)行。與系統(tǒng)測試不同在于前者覆蓋范圍不夠,只要保證修改部分及其關(guān)聯(lián)的模塊不出問題就可。
什么時(shí)候執(zhí)行冒煙測試?
測試是測試人員確認(rèn)軟件存在bug的過程,此過程中不可避免是需要開發(fā)人員要不停的修改bug,那么常常會(huì)發(fā)現(xiàn)一個(gè)功能的改動(dòng),導(dǎo)致下一輪系統(tǒng)測試出現(xiàn)問題。即發(fā)現(xiàn)也許以前修改的bug的確是解決了,可是由于修改一個(gè)或多個(gè)bug導(dǎo)致其他功能模塊出現(xiàn)新的問題,測試跑不通了,只能測試終止。那么我們?nèi)绾未_保開發(fā)人員修復(fù)了bug后,這個(gè)bug的修復(fù)沒有影響到其他功能模塊呢?這時(shí)就需要進(jìn)行冒煙測試?yán)?/p>
執(zhí)行冒煙測試的前提?
前面提到冒煙測試是與開發(fā)的合同協(xié)作,初步了解代碼中進(jìn)行了什么更改。若要理解該更改,必須理解使用的技;開發(fā)需告知此修改對其他功能是否影響;更改對各組件的依存關(guān)系有何影響。
執(zhí)行冒煙測試所需要注意的地方?
列出冒煙測試的主要功能、測試點(diǎn);冒煙測試不是只對修改過功能進(jìn)行測試;重視平時(shí)測試時(shí)容易忽略的隱藏功能
軟件研發(fā)不同階段的 Smoke Testing
形成集成測試版本以前——Smoke Testing 是隨著代碼的不斷開發(fā)必做的一項(xiàng)工作,目的是驗(yàn)證各個(gè)單元能夠成功執(zhí)行,并保證測試版本能夠順利集成。
形成集成測試版本以后——在代碼 check in 到 daily build 之前執(zhí)行 Smoke Testing,以保證新的或者更改過的代碼不破壞集成版本的完成性和穩(wěn)定性。
后期預(yù)測試 Bug 的修正——后期 daily build 相對穩(wěn)定時(shí),針對每個(gè) Bug 所做的 Bug Fix 都要先在“干凈的” build 中進(jìn)行 Smoke Testing,測試通過的 Bug Fix 才能 check in 到新的 daily build 中。
冒煙測試和回歸測試的區(qū)別
冒煙測試,是版本驗(yàn)證測試,主要確認(rèn)新的版本是否存在致命性bug,功能可以正常運(yùn)行,不會(huì)影響下一輪測試的進(jìn)行,如果上述都符合那么這個(gè)版本就可以進(jìn)行下一輪測試。個(gè)人理解冒煙測試最大的優(yōu)點(diǎn)在于節(jié)約測試的時(shí)間成本,減少測試輪數(shù)。
而回歸測試,是軟件維護(hù)階段對軟件修改后進(jìn)行的測試,指修改了舊代碼后,重新進(jìn)行測試以確認(rèn)修改沒有引入新的錯(cuò)誤或?qū)е缕渌a產(chǎn)生錯(cuò)誤。
最后
冒煙測試一般基于Nightly build,構(gòu)建服務(wù)器首先從CVS服務(wù)器上,下載最新的源代碼,然后編譯單元測試,運(yùn)行單元測試通過后,編譯可執(zhí)行文件,可執(zhí)行文件若可運(yùn)行,并能執(zhí)行最基本的功能,則認(rèn)為通過了冒煙測試,這時(shí),構(gòu)建服務(wù)器會(huì)把程序打包成安裝文件,然后上傳到內(nèi)部網(wǎng)站,第二天一早,測試人員來了以后,會(huì)收到構(gòu)建服務(wù)器發(fā)來的郵件提示昨晚是否構(gòu)建成功。若構(gòu)建成功,則測試人員進(jìn)行相關(guān)的功能測試。所有這些功能的完成,一般是靠編寫腳本完成的,目前比較常用的腳本有 TCL,Perl,Python及功能弱弱的批處理。用這些可以完成系統(tǒng)的每日構(gòu)建。
總結(jié)
簡單的說,就是先保證系統(tǒng)能跑的起來,不至于讓測試工作做到一半突然出現(xiàn)錯(cuò)誤導(dǎo)致業(yè)務(wù)中斷。目的就是先通過最基本的測試,如果最基本的測試都有問題,就直接打回開發(fā)部了,減少測試部門時(shí)間的浪費(fèi)。
總結(jié)
以上是生活随笔為你收集整理的软件质量保证与测试——Smoke Test的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: javaweb_JSP 中文字符处理程序
- 下一篇: 软件质量保证与测试——Ad hoc Te