Sanity Testing 和 Smoke Testing的区别
Sanity Testing 和 Smoke Testing的區(qū)別
Sanity testing 和Smoke Testing是兩個(gè)非常容易混淆的測(cè)試類型。
Smoke Testing(冒煙測(cè)試)
Smoke Testing(冒煙測(cè)試)是在軟件構(gòu)建(build)后進(jìn)行的一種測(cè)試,用來(lái)確定程序的關(guān)鍵功能是否正常工作。在軟件構(gòu)建上執(zhí)行任何詳細(xì)的功能或回歸測(cè)試之前執(zhí)行。目的是拒絕一個(gè)嚴(yán)重?fù)p壞的應(yīng)用程序,這樣測(cè)試團(tuán)隊(duì)就不會(huì)浪費(fèi)時(shí)間安裝和測(cè)試軟件應(yīng)用程序。 ? ? ? ? ? ? ?
在冒煙測(cè)試中,測(cè)試用例選擇覆蓋系統(tǒng)最重要的功能或組件。其目的不是執(zhí)行詳盡的測(cè)試,而是驗(yàn)證系統(tǒng)的關(guān)鍵功能是否正常工作。例如,典型的Smoke Testing(冒煙測(cè)試)是驗(yàn)證應(yīng)用程序是否成功啟動(dòng),檢查GUI是否響應(yīng)…等。?
Sanity Testing
Sanity Testing 是在接收到軟件構(gòu)建(Build)后進(jìn)行的一種測(cè)試,在代碼或功能上做了細(xì)微的更改,以確定缺陷已被修復(fù),并且不會(huì)因這些更改而引入進(jìn)一步的問(wèn)題。目標(biāo)是確定所建議的功能大致如預(yù)期的那樣工作。如果Sanity Testing失敗,那么構(gòu)建(Build)將被拒絕,以節(jié)省進(jìn)行更嚴(yán)格測(cè)試所需的時(shí)間和成本。?
這兩者咋一看,看起來(lái)都差不多。其實(shí),兩者之間還是有很多的不同,首先測(cè)試的目的就不同。一些關(guān)鍵的區(qū)別參照下面的表格:
| Smoke Testing | Sanity Testing |
| The objective of this testing is to verify the "stability" of the system in order to proceed with more rigorous testing | The objective of the testing is to verify the "rationality" of the system in order to proceed with more rigorous testing |
| Smoke Testing is performed to ascertain that the critical functionalities of the program is working fine | Sanity Testing is done to check the new functionality/bugs have been fixed |
| This testing is performed by the developers or testers | Sanity testing is usually performed by testers |
| Smoke testing is usually documented or scripted | Sanity testing is usually not documented and is unscripted |
| Smoke testing is a subset of Acceptance testing | Sanity testing is a subset of Regression Testing |
| Smoke testing exercises the entire system from end to end | Sanity testing exercises only the particular component of the entire system |
| Smoke testing is like General Health Check Up | Sanity Testing is like specialized health check up |
- Sanity Testing和Smoke Testing都是避免浪費(fèi)時(shí)間和精力的方法,可以快速確定應(yīng)用程序是否有缺陷,不值得進(jìn)行任何嚴(yán)格的測(cè)試。 ? ? ? ? ? ? ?
- Sanity testing 也稱為測(cè)試人員驗(yàn)收測(cè)試。
- 對(duì)特定構(gòu)建(Build)執(zhí)行的Smoke testing也稱為Build驗(yàn)證測(cè)試。
- 最佳的實(shí)踐之一是在軟件項(xiàng)目中進(jìn)行每日構(gòu)建(daily build)和 Smoke testing。 ? ? ? ? ? ?
- Sanity Testing和Smoke Testing可以手動(dòng)執(zhí)行,也可以使用自動(dòng)化工具。當(dāng)使用自動(dòng)化工具時(shí),測(cè)試通常由生成構(gòu)建本身的同一進(jìn)程啟動(dòng)。 ? ? ? ? ? ? ?
- 根據(jù)測(cè)試的需要,您可能需要在軟件構(gòu)建中執(zhí)行Sanity Testing和Smoke Testing。在這種情況下,您將首先執(zhí)行Smoke Testing,然后繼續(xù)進(jìn)行Sanity Testing。在工業(yè)中,為了加快測(cè)試的執(zhí)行,通常將Sanity Testing的測(cè)試用例與Smoke Testing的測(cè)試用例結(jié)合起來(lái)。因此,這些術(shù)語(yǔ)經(jīng)?;煜?#xff0c;可以互換使用,這是很常見(jiàn)的。?
總結(jié)
以上是生活随笔為你收集整理的Sanity Testing 和 Smoke Testing的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Beyond Compare 4.2.1
- 下一篇: spss基本总结——因子分析