【问题标题】:CDK AWS Lambda 如何模拟提供的资产
【发布时间】:2022-01-23 02:36:54
【问题描述】:

我正在使用jest 进行测试,并且我的堆栈中有一个我想要测试的 lambda 函数。 像这样:

const lambda = new lambda.Function(this, "MyLambda", {
   ...
   code: lambda.Code.fromAsset("../assets/lambda.zip"),
   ...
   }
);

我想测试一些属性,还想测试 lambda 是否在堆栈中。但是当我运行测试时,它抱怨我的lambda.zip 不存在。这很公平,因为它是作为另一个构建工作的一部分构建的。 有什么方法可以注入或以某种方式模拟 lambda 的资产。

【问题讨论】:

  • 我会创建一个空文件,然后将其删除。不过,不确定这是否是最佳方式。

标签: aws-lambda aws-cdk ts-jest


【解决方案1】:

您可以尝试使用Code.fromInline(),因为它不需要磁盘上的任何文件。只需将虚拟函数代码作为字符串传递。

lambda.Code.fromInline("exports.handler = async function(event, context) {}")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-25
    • 2013-03-08
    • 2020-02-04
    • 1970-01-01
    • 2021-09-23
    • 1970-01-01
    • 2022-11-06
    相关资源
    最近更新 更多