Smoke test,Sanity test,Regression test之间的区别

在测试领域,冒烟测试(smoke test)、可用性测试(sanity test)和回归测试(regression test)彼此之间很相似,范围也有重叠,

所以比较容易混淆:都是在需求变更或问题修改后对系统全面测试之前的一种预测试,都是为了发现是否在界面和代码层面引入了问题。

 

我们可以用一个和河流相关的类比来更好的理解它们之间的差别,在类比之前,我们先了解下这几个测试的简单定义:

  • Smoke Testing: 测试新特性有关的所有方面 (广度) ,但不深入,用以判断我们是否需要执行进一步的测试
  • Sanity Testing: 测试新特性的有限正常功能,深入测试
  • Regression testing: 回归新特性所有相关功能,避免引入代码变更存在问题以及引入新问题,深入全面

如果我们拿一条河流来比喻,比如1000英尺宽,在水里含有杂质(可以比作软件中的bug),

那么这三种类型的测试可以被看作如下:

对于Smoke Testing: 为了找到河面所有的杂质,但不包括水面以下的

对于Sanity Testing: 为了找到某个特定范围内所有的杂质(比如200英尺半径内),这不包含所有表面的杂质,但包含了那个范围内水面下直到水底的杂质

对于Regression Testing: 为了这片水域所有的杂质,表面的以及水面以下的

posted @ 2023-11-23 18:18  陈晓猛  阅读(282)  评论(0编辑  收藏  举报