3

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

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

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

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

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

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

非常感谢任何帮助!

4

1 回答 1

0

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

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

于 2021-11-24T11:55:02.893 回答