【问题标题】:Mocking with Serverless Offline and Integration Tests使用无服务器离线和集成测试进行模拟
【发布时间】:2021-03-15 13:51:20
【问题描述】:

我有一个使用 API Gateway 身份验证和 Lambda 的无服务器堆栈 (AWS),使用 NestJS 实现了一个 RESTful API。

我正在使用 Serverless-offline 在我的本地环境中模拟堆栈。这允许我从端到端 API 调用的角度模拟 API 网关身份验证(简单密钥,而不是自定义授权者)和 lambda 执行。

我可以使用 NestJS 测试助手执行 e2e 测试,这允许我为堆栈中不可用的其他服务注入模拟。

我想做的是使用无服务器离线运行测试 - 因此允许我通过其模拟的 API 网关测试身份验证。我可以通过在我的测试中启动 serverless-offline 来了解如何做到这一点(例如 https://dev.to/didil/serverless-testing-strategies-4g92)。

但是,如果我使用无服务器离线(作为链接),那么我看不到如何为堆栈中不可用的其他服务注入模拟。

是否有另一种 e2e 测试解决方案允许我模拟 api 网关并注入模拟?

非常感谢任何帮助!

【问题讨论】:

    标签: integration-testing serverless-framework serverless-offline


    【解决方案1】:

    使用您链接的测试策略,您可以模拟您对外部服务的请求和响应,以测试不同的场景。 Nock 是一个可以简化在测试中模拟外部请求的库。

    虽然,这似乎不像我想象的那样使用serverless-offline。我发现this answer 概述了在运行测试时替换访问外部服务的端点的策略。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-24
      • 1970-01-01
      • 1970-01-01
      • 2015-06-15
      • 1970-01-01
      • 2018-06-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多