发布
社区首页 >问答首页 >验收测试和功能测试之间的区别?

验收测试和功能测试之间的区别?
EN

Stack Overflow用户
提问于 2010-07-30 17:46:01
回答 11查看 115.7K关注 0票数 160

验收测试和功能测试之间的真正区别是什么?

每一项的亮点或目标是什么?无论我读到哪里,它们都模棱两可地相似。

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2010-07-30 19:55:46

在我的世界里,我们使用的术语如下:

功能测试:这是一个验证活动;我们是否构建了一个正确工作的产品?软件是否满足业务需求?

对于这种类型的测试,我们的测试用例涵盖了我们能想到的所有可能的场景,即使这种场景不太可能存在于“现实世界”中。在进行这种类型的测试时,我们的目标是最大限度地提高代码覆盖率。我们使用当时我们能掌握的任何测试环境,它不一定是“生产”级别的,只要它是可用的。

验收测试:这是一个验证活动;我们是否构建了正确的东西?这是客户真正需要的吗?

这通常是与客户合作完成的,或者由内部客户代理(产品所有者)完成。对于这种类型的测试,我们使用的测试用例涵盖了我们期望使用软件的典型场景。此测试必须在“类似生产”的环境中进行,其硬件与客户将使用的硬件相同或接近。这是我们测试我们的“功能”的时候:

  • Reliability,Availability test.
  • Scalability::通过stress test.
  • Usability:验证,通过load 验证,通过对客户的检查和演示验证。用户界面的配置是否符合他们的喜好?我们是否将客户品牌放在了所有正确的位置?我们是否拥有他们向for?
  • Security询问的所有字段/屏幕(也称为安全性,只是为了适应):通过演示验证。有时,客户会聘请外部公司进行安全审计和/或入侵testing.
  • Maintainability:验证,通过演示我们将如何交付软件进行updates/patches.
  • Configurability:验证,通过演示客户如何修改系统以满足其需求。

这绝不是标准的,我也不认为有一个“标准”的定义,正如这里相互矛盾的答案所证明的那样。对你的组织来说,最重要的事情是准确地定义这些术语,并坚持使用它们。

票数 182
EN

Stack Overflow用户

发布于 2014-06-12 22:34:03

我喜欢帕特里克·库夫的回答。我想补充的是测试级别和测试类型之间的区别,这让我大开眼界。

测试级别

使用V-model很容易解释测试级别,例如:

每个测试级别都有其相应的开发级别。它具有典型的时间特征,它们在开发生命周期的特定阶段执行。

  1. component/unit测试design
  2. component/unit验证详细的requirements
  3. system集成测试=>验证全局设计
  4. 系统测试=>验证系统requirements
  5. acceptance集成测试=>验证系统requirements

测试=>验证用户requirements

测试类型

测试类型是一种特征,它关注特定的测试目标。测试类型强调质量方面,也称为技术方面或非功能方面。测试类型可以在任何测试级别执行。我喜欢使用ISO/IEC 25010:2011中提到的质量特性作为测试类型。

  1. functional testing
  2. reliability testing
  3. performance testing
  4. operability testing
  5. security testing
  6. compatibility testing
  7. maintainability testing
  8. transferability testing

为了让它完整。还有一种叫做回归测试的东西。这是测试级别和测试类型之外的一个额外分类。回归测试是您想要重复的测试,因为它触及了产品中的关键内容。实际上,它是您为每个测试级别定义的测试子集。如果你的产品中有一个小的bug修复,你不会总是有时间重复所有的测试。回归测试就是对此的一种回答。

票数 77
EN

Stack Overflow用户

发布于 2011-11-21 05:57:03

不同之处在于测试问题和解决方案。软件是一个问题的解决方案,两者都可以测试。

功能测试确认软件在您如何解决问题的范围内执行功能。这是软件开发过程中不可或缺的一部分,可以与批量生产的产品出厂前的测试相媲美。功能测试验证产品是否如您(开发人员)所认为的那样工作。

验收测试验证产品实际上解决了它想要解决的问题。这最好由用户(客户)来完成,例如执行软件协助的他/她的任务。如果该软件通过了这个现实世界的测试,那么它将被接受来替代以前的解决方案。这种验收测试有时只能在生产环境中正确完成,特别是当你有匿名客户(例如网站)的时候。因此,新功能只有在使用几天或几周后才会被接受。

Functional testing -测试产品,验证它是否具有您设计或构建的质量(功能、速度、错误、一致性等)

Acceptance -在产品的上下文中测试产品,这需要(模拟)人与人的交互,测试它对原始问题的预期效果。

票数 28
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3370334

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档