使用Serverless Offline和集成测试进行模拟

4
我有一个无服务器堆栈(AWS),使用API Gateway身份验证和Lambda,使用NestJS实现restful API。我在使用Serverless-offline来模拟本地环境中的堆栈。这使得我能够从端到端的API调用角度模拟API网关身份验证(简单密钥,而不是自定义授权)和Lambda执行。我可以使用NestJS测试助手执行e2e测试,这使我能够为堆栈中不可用的其他服务注入mocks。我想做的是使用serverless-offline运行测试,从而允许我通过模拟的API网关测试身份验证。我可以看到如何通过在我的测试中启动serverless-offline(例如https://dev.to/didil/serverless-testing-strategies-4g92)来完成此操作。但是,如果我使用serverless-offline(作为链接),那么我看不到如何可能为其他服务注入mocks。是否有另一种解决方案进行e2e测试,允许我模拟api gateway并注入mocks?非常感谢任何帮助!
1个回答

1

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

然而,似乎这种方法可能无法与 serverless-offline 一起使用。我找到了 这个答案,它概述了在运行测试时替换访问外部服务的端点的策略。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接