健全性测试与回归测试?

Posted

技术标签:

【中文标题】健全性测试与回归测试?【英文标题】:Sanity Testing vs Regression Testing? 【发布时间】:2021-08-06 02:31:53 【问题描述】:

我做了一些研究,我发现:

健全性测试是一种软件测试,它是在收到软件构建并更改功能和代码后执行的。执行健全性测试是为了确保错误已得到修复,并且没有其他由新更改引起的错误。

回归测试正在测试现有的软件功能,以确保更改或添加没有破坏任何现有功能

我看不出这两种测试技术之间的区别? 有什么说明吗?

【问题讨论】:

请注意,这是Software Engineering 的问题,而不是这里;我们只关注您在编写代码过程中实际遇到的具体、狭窄的问题。 也就是说,回归测试的最狭义定义是测试回归——重新引入以前修复的错误的地方。如果您在实现任何错误修复的同时为错误添加测试用例(因此,如果错误停止修复,它将触发),即使在最严格的定义中,这也是在构建回归测试套件。 【参考方案1】:

健全性测试是指检查应用程序功能是否仍然正常,并且没有明显的荒谬。如果您尝试最简单的快乐路径,但结果不正确,则它未通过健全性测试。

The Wikipedia entry:

健全性检查或健全性测试是一种基本测试,用于快速评估声明或计算结果是否可能为真。这是一个简单的检查,看看所生产的材料是否合理(材料的创造者是否理性地思考,应用理智)。健全性测试的重点是排除某些明显错误的结果,而不是捕捉每一个可能的错误。可以检查经验法则或粗略计算以执行测试。执行初始健全性测试的优点是可以快速评估基本功能。

回归测试意味着彻底检查可能受到影响的所有内容,以确保没有更改任何功能并且没有引入新的错误。这意味着找出受更改代码影响的所有功能,并且不仅要执行快乐路径,还要执行替代流程。

the Wikipedia entry:

回归测试(很少是非回归测试[1])是重新运行功能性和非功能性测试,以确保先前开发和测试的软件在更改后仍然可以执行。[2]如果不是,那将被称为回归。可能需要回归测试的更改包括错误修复、软件增强、配置更改,甚至电子组件的替换。 [3]由于回归测试套件往往会随着每个发现的缺陷而增长,因此经常涉及测试自动化。有时会执行变更影响分析以确定适当的测试子集(非回归分析[4])。

健全性测试是肤浅的。回归测试应该是深入的。

【讨论】:

以上是关于健全性测试与回归测试?的主要内容,如果未能解决你的问题,请参考以下文章

回归测试

什么是软件回归测试,如何进行回归测试,进行回归测试时有哪些常用的方法?

149下单元测试集成测试系统测试验收测试回归测试等

回归测试

什么是回归测试?如何做回归测试?

软件测试之回归测试