【发布时间】:2018-12-20 05:51:00
【问题描述】:
我目前正在使用 Laravel5.7 开发一个项目,现在正在做测试部分。我已经在 tests/unit 目录中编写了单元测试代码。 接下来我看到的是一个 test/Feature 目录。所以我的问题是功能测试和集成测试是相同的还是有区别的。
感谢任何帮助
【问题讨论】:
-
google 发给我这里:stackoverflow.com/a/3670767/5309228
我目前正在使用 Laravel5.7 开发一个项目,现在正在做测试部分。我已经在 tests/unit 目录中编写了单元测试代码。 接下来我看到的是一个 test/Feature 目录。所以我的问题是功能测试和集成测试是相同的还是有区别的。
感谢任何帮助
【问题讨论】:
根据定义,功能和集成测试不一定相同。
单元测试通常测试代码中最有可能是方法或函数的最小单元。集成测试应确保多个单元或一个或多个模块按预期协同工作。 功能测试通常是端到端测试,例如您通过 HTTP 请求测试 API 端点并断言其响应。 API 请求将通过应用程序的所有层,例如实例控制器、模型、DBAL、DBMS。
我们在我的公司运行一个相当大的、多租户的 Laravel 应用程序,我们有以下测试套件: * 单元测试 * API 端点的 Http 测试(端到端,没有 DB 模拟) * 带有 Dusk 的浏览器测试(端到端,没有 DB 模拟)
在测试中模拟所有外部/第 3 方调用(即 Facebook API、电子邮件服务提供商)。
【讨论】: