98

它是什么以及为什么使用/有用?

4

9 回答 9

113

健全性测试不以任何方式受限于编程或软件工程的上下文。健全性测试只是一个随意的术语,表示您正在测试/确认/验证应该遵循非常清晰和简单的逻辑的东西。它要求其他人确认您没有精神错乱,并且对您来说似乎有意义的事情对他们也有意义......或者您在过去 4 小时内喝了太多能量饮料以保持理智?

如果你完全不知道为什么一些非常简单的东西不起作用……你会要求别人为你做一个快速的理智测试。让他们确保您for在最后 15 次查看时没有忽略循环末尾的分号。极其简单的例子,真的不应该发生,但有时你离某事太近了,无法退后一步看到整体。不同的观点有时有助于确保你不是完全疯了。

于 2010-11-01T13:50:32.987 回答
8

一个很好的例子是数据库连接的完整性检查。

SELECT 1 FROM DUAL

这是一个测试连接的简单查询,请参阅:

从 DUAL 中选择 1:MySQL

它不测试深层功能,只是连接可以继续进行。

于 2010-10-29T20:41:47.323 回答
8

至少在我理解的情况下,smoke 和 sanity 之间的区别在于,smoke test 是一种快速测试,可以在构建后查看应用程序是否足以进行测试。然后,你做一个健全性测试,它会告诉你一个特定的功能区域是否足够好,以至于在这个区域上进行测试实际上是有意义的

例子:

冒烟测试:我可以启动应用程序并浏览所有屏幕并且应用程序不会崩溃。

- 如果应用程序崩溃或我无法访问所有屏幕,则此版本确实存在问题,存在需要尽快扑灭的“火灾”,并且该版本不适合测试。

健全性测试(对于用户管理屏幕):我可以进入用户管理屏幕,创建一个用户并将其删除。

  • 因此,该应用程序通过了冒烟测试,现在我继续进行不同区域的健全性测试。如果我不能依赖应用程序来创建和删除用户,那么测试更高级的功能(如用户过期、登录等)毫无价值……但是,如果通过了健全性测试,我可以继续测试这片区域。
于 2010-11-01T13:40:36.717 回答
7

健全性测试或健全性检查是一种基本测试,用于快速评估索赔或计算结果是否可能为真@http: //en.wikipedia.org/wiki/Sanity_testing

于 2010-10-29T20:41:17.523 回答
3

冒烟测试用于快速测试新版本的稳定性。健全性测试是对新部署环境的测试。

于 2016-02-04T04:47:02.447 回答
1

对于软件应用程序,健全性测试是一组许多测试,这些测试使软件版本在集成新功能和错误修复后可向公众发布。健全性测试意味着虽然许多问题可能仍然存在,但可能导致某人损失金钱或数据或使程序崩溃的非常关键的问题已得到修复。因此,如果没有关键问题仍然存在,则该版本通过了健全性测试。这通常是发布前完成的最后一次测试。

于 2015-03-18T22:53:41.140 回答
1

健全性检查背后的基本概念是确保运行代码的结果与预期结果一致。除了使用频率远远低于应有的频率之外,适当的健全性检查有助于确保您正在做的事情不会完全超出界限并因此做不应该做的事情。完整性检查最常见的用途是调试行为不端的代码,但即使是最终产品也可以受益于有一些适当的位置,以防止由于 GIGO(垃圾输入,垃圾输出)而出现不需要的错误。

相关地,永远不要低估你的用户做你没想到任何人会做的事情的能力。这是许多程序员从未学习过的一课,无论它被教了多少次,而健全性检查是帮助您接受它的绝佳工具。“我永远不会那样做”并不是您的代码无法处理问题的有效借口,而良好的健全性检查可以帮助您避免这种借口。

于 2014-02-04T20:13:31.870 回答
0

这是一项基本测试,可确保某些东西正常工作。

例如:连接到数据库。或者 ping 一个网站/服务器,看看它是启动还是关闭。

于 2010-10-29T20:43:21.577 回答
0

检查一段代码(或任何其他内容,例如,Usenet 发布)是否存在完全愚蠢的错误的行为。

暗示检查是为了确保作者在写作时神志清醒;

例如,如果一个科学软件依赖于一个特定的公式并且给出了意想不到的结果,那么在查看更复杂的 I/O 或数据结构操作例程,更不用说算法本身了。

于 2013-10-28T05:00:54.897 回答