【问题标题】:Difference between feature test and integration testing [duplicate]功能测试和集成测试之间的区别[重复]
【发布时间】:2018-12-20 05:51:00
【问题描述】:

我目前正在使用 Laravel5.7 开发一个项目,现在正在做测试部分。我已经在 tests/unit 目录中编写了单元测试代码。 接下来我看到的是一个 test/Feature 目录。所以我的问题是功能测试和集成测试是相同的还是有区别的。

感谢任何帮助

【问题讨论】:

标签: php laravel eloquent


【解决方案1】:

根据定义,功能和集成测试不一定相同。

单元测试通常测试代码中最有可能是方法或函数的最小单元。集成测试应确保多个单元或一个或多个模块按预期协同工作。 功能测试通常是端到端测试,例如您通过 HTTP 请求测试 API 端点并断言其响应。 API 请求将通过应用程序的所有层,例如实例控制器、模型、DBAL、DBMS。

我们在我的公司运行一个相当大的、多租户的 Laravel 应用程序,我们有以下测试套件: * 单元测试 * API 端点的 Http 测试(端到端,没有 DB 模拟) * 带有 Dusk 的浏览器测试(端到端,没有 DB 模拟)

在测试中模拟所有外部/第 3 方调用(即 Facebook API、电子邮件服务提供商)。

【讨论】:

  • 如果您正在测试 API,那么功能测试就像端到端测试。但在其他场景中,功能测试只能是用户更大的端到端路径的一部分。至少这是我的理解,因为我在软件开发中没有找到测试类型的通用定义。它可能会有所不同。
猜你喜欢
  • 2017-12-15
  • 2011-04-09
  • 2011-06-21
  • 2011-03-23
  • 1970-01-01
  • 1970-01-01
  • 2018-07-23
  • 1970-01-01
相关资源
最近更新 更多