gpt4 book ai didi

aws-lambda - 如何在本地测试cloudformation lambda函数?

转载 作者:行者123 更新时间:2023-12-05 08:07:31 31 4
gpt4 key购买 nike

用例

我有 cloudformation 堆栈,其中包含大约 25 个 lambda 函数。在部署到生产环境之前,我需要在本地测试所有功能。

我知道 aws 有 SAM Cli 来测试无服务器函数,与 cloudformation lambda 相比,它具有完全不同的语法。

aws 是否有任何可能的工具可以解决我的用例?

因为将 cfn lambda 转换为 sam 语法需要相当多的时间,而且 sam 没有 cloudformation 那么多的选项。

任何帮助表示赞赏谢谢

最佳答案

我知道您选择了 SAM cli 来构建模板,但我建议您转向无服务器 (npm i serverless -g),因为它们更高级。无服务器是一个由工程师构建的框架,没有附加/依赖于它的云提供商,因此您可以从模板轻松地从 Azure 切换到 AWS。

因为它得到了大型开发社区的支持,所以该框架有各种插件,包括无服务器离线插件,它允许您在本地运行 API,就像您刚刚运行 node index.js 。还有诸如“serverless-jest”或“serverless-mocha”之类的插件用于单元测试,但我最终使用了正常的“Jest”运行集成测试(我使用cognito用户池并且需要检查身份验证 token )。

如果你真的想测试你的cloudformation架构的代码,你可以有一个带有你的函数的JS文件,并在本地使用节点运行它,而不是在你的cloudformation模板中包含代码,你需要压缩ip,上传S3,然后告知模板上的路径。

总之,我知道您问过如何测试 SAM Serverless,但由于您希望拥有适当的开发流程(本地执行、单元测试、管道等),因此切换到 Serverless 框架将是解决方案。你可以通过node来模拟功能,但这会增加你对框架已经做的事情的手动管理。

关于aws-lambda - 如何在本地测试cloudformation lambda函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55027793/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com