繁体   English   中英

在python中自动测试aws lambda函数

[英]Automation testing for aws lambda functions in python

我有一个aws lambda函数,它将在dynamodb中为s3存储桶中创建的每个对象写入s3文件元数据信息,为此我在s3存储桶上有事件触发器。 所以我打算使用python自动化测试。 任何人都可以帮助我如何使用unittest包自动化这个lambda函数来测试以下内容。

  1. 验证dynamodb表的存在性
  2. 在s3中验证存储桶是否存在以进行事件触发。
  3. 验证s3存储桶中的文件计数和Dynamodb表中的记录计数。

这可以使用motounittest来完成。 moto将要做的是为AWS添加有状态模拟 - 您的代码可以继续像正常一样调用boto ,但实际上不会对AWS进行调用。 相反, moto将在记忆中建立状态。

例如,你可以

  1. 激活DynamoDB的模拟
  2. 创建一个DynamoDB表
  3. 将项目添加到表中
  4. 从表中检索项目并查看它们是否存在

如果您正在为DynamoDB和S3构建功能,那么您将利用motomock_s3mock_dynamodb2方法。

我写了一个关于如何做到这一点的教程(它使用pytest而不是unittest但这应该是一个小的区别)。 看看: joshuaballoch.github.io/testing-lambda-functions/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM