是否可以使用无服务器框架将测试事件推送到AWS Lambda?

时间:2018-11-04 14:37:46

标签: testing aws-lambda serverless-framework

我正在使用无服务器框架推送到AWS Lambda。为了测试我的功能,我目前仅使用Lambda控制台添加每个方法,这变得非常乏味,并且我想有一种方法可以将它们与serverless deploy一起添加到代码中。

enter image description here

我发现this reference是用于本地测试的无服务器方法,但似乎没有将这些测试事件部署到Lambda。

理想情况下,我希望能够在Serverless中做到这一点,但是如果有一种方法可以通过aws-cli来做到这一点,那么它也是一个不错的选择。

1 个答案:

答案 0 :(得分:4)

不幸的是,测试事件仅是AWS控制台的功能,并且无法在AWS API (docs)上使用。

您已经注意到,Serverless Framework包含调用命令-您已链接到Invoke Local,但是Invoke也存在,可以像在AWS控制台上一样在云上调用函数。

由于Serverless的Invoke命令可以将JSON文件作为事件,因此,我建议的解决方法是创建一个JSON事件的文件夹(如tests/payloads),作为代码的一部分。这样,您便可以使用serverless invoke -f functionName -p ./tests/payloads/payloadName.json来模拟AWS控制台为您提供的体验。