【发布时间】:2010-10-29 20:40:14
【问题描述】:
它是什么以及为什么使用/有用?
【问题讨论】:
标签: testing smoke-testing
它是什么以及为什么使用/有用?
【问题讨论】:
标签: testing smoke-testing
健全性测试在任何方面都不受编程或软件工程环境的限制。健全性测试只是一个随意的术语,表示您正在测试/确认/验证一些应该遵循非常清晰和简单的逻辑的东西。它要求其他人确认您没有精神错乱,并且对您似乎有意义的事情对他们也有意义......或者您在过去 4 小时内喝了太多能量饮料以保持理智?
如果您完全不知道为什么一些非常简单的事情不起作用……您会要求某人为您做一个快速的理智测试。让他们确保您在过去 15 次查看时没有忽略 for 循环末尾的分号。极其简单的例子,真的不应该发生,但有时你离某事太近了,无法退后一步看到整体。不同的观点有时有助于确保你不是完全疯了。
【讨论】:
很好的例子是数据库连接的健全性检查。
SELECT 1 FROM DUAL
这是一个测试连接的简单查询,请参阅:
它不测试深层功能,只是连接可以继续进行。
【讨论】:
smoke 和 sanity 之间的区别,至少在我的理解中,smoke 测试是一种快速测试,可以在构建之后查看 应用程序是否足以进行测试。然后,您进行一个健全性测试,它会告诉您某个特定的功能区域是否足够好,以至于在该区域上进行测试实际上是有意义的。
例子:
冒烟测试:我可以启动应用程序并浏览所有屏幕并且应用程序不会崩溃。
-如果应用程序崩溃或我无法访问所有屏幕,则此版本确实存在问题,需要尽快扑灭“火灾”,并且该版本不适合测试。
健全性测试(对于用户管理屏幕):我可以进入用户管理屏幕,创建一个用户并将其删除。
【讨论】:
健全性测试或健全性检查是一种基本测试,用于快速评估索赔或计算结果是否可能为真@http://en.wikipedia.org/wiki/Sanity_testing
【讨论】:
冒烟测试用于快速测试新版本的稳定性。 健全性测试是对新部署环境的测试。
【讨论】:
健全性检查背后的基本概念是确保运行代码的结果与预期结果一致。除了使用频率远远低于应有的使用频率之外,适当的健全性检查有助于确保您正在做的事情不会完全超出界限并因此做不应该做的事情。健全性检查最常见的用途是调试行为不端的代码,但即使是最终产品也可以受益于设置一些以防止由于 GIGO(垃圾输入,垃圾输出)而出现不需要的错误。
与此相关的是,永远不要低估您的用户做您没想到任何人实际上会做的事情的能力。这是许多程序员从未学习过的一课,无论它被教了多少次,而健全性检查是帮助您接受它的绝佳工具。 “我永远不会那样做”不是您的代码无法处理问题的有效借口,而良好的完整性检查可以帮助您避免这种借口。
【讨论】:
对于软件应用程序而言,健全性测试是一组多项测试,这些测试使软件版本在集成新功能和错误修复后可向公众发布。健全性测试意味着虽然许多问题可能仍然存在,但可能导致某人损失金钱或数据或使程序崩溃的非常关键的问题已得到修复。因此,如果没有关键问题仍然存在,则该版本通过了健全性测试。这通常是发布前完成的最后一次测试。
【讨论】:
这是一项基本测试,可确保某些东西正常工作。
例如:连接到数据库。或者 ping 一个网站/服务器以查看它是启动还是关闭。
【讨论】:
检查一段代码(或任何其他内容,例如 Usenet 帖子)是否存在完全愚蠢的错误的行为。
暗示检查是为了确保作者在写作时是理智的;
例如,如果一个科学软件依赖于一个特定的公式并且给出了意想不到的结果,那么在查看更复杂的 I /O 或数据结构操作例程,更不用说算法本身了。
【讨论】: