我们的堆栈中没有SQS构造,但回顾示例测试可以在一定程度上了解如何测试构造。让我们删除自动生成的示例测试并创建我们自己的测试。

设置测试功能

首先,让我们创建一个可重用的函数来从堆栈中获取 CloudFormation 模板:

测试 DynamoDB 表属性

我们将首先添加一个测试来检查堆栈中的 DynamoDB 表是否具有正确的属性。操作方法如下:

测试 Lambda 函数

接下来,让我们确保我们的堆栈创建正确数量的 Lambda 函数并验证其运行时版本:

运行测试

要运行测试,您可以在终端中执行pytest

pytest

以下是您应该收到的输出:

================================================================================= test session starts =================================================================================platform darwin -- Python 3.12.4, pytest-8.1.1, pluggy-1.4.0rootdir: /Users/adrian/Developer/Projects/rss-lambda-ddb-socialshareplugins: typeguard-2.13.3collected 2 items                                                                                                                                                                     tests/unit/test_rss_lambda_ddb_socialshare_stack.py ..                                                                                                                          [100%]================================================================================= 2 passed in 21.86s ==================================================================================

结论

在我们系列的第 3 部分中,我们学习了如何测试我们的 CDK 构造。在最后一部分中,我们将探讨如何在本地测试 Lambda 函数。

资源

","image":"http://www.luping.net/uploads/20240815/172369836366bd8cbb7a11d.jpg","datePublished":"2024-08-15T13:06:03+08:00","dateModified":"2024-08-15T13:06:03+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 使用 CDK v 探索 AWS 无服务器部署从 RSS 到 X Posts - Odyssey 的一部分

使用 CDK v 探索 AWS 无服务器部署从 RSS 到 X Posts - Odyssey 的一部分

发布于2024-08-15
浏览:272

Exploring AWS Serverless Deployments with CDK vFrom RSS to X Posts - Part f the Odyssey

欢迎阅读“使用 CDK v2 探索 AWS 无服务器部署”的第 3 部分。首先,我要感谢您的耐心等待,因为自第 2 部分以来一直存在一些差距。我在工作中深入研究和从事无服务器项目,这让我无法继续工作,但我很高兴能回到正轨并继续我们的探索。

在之前的文章中,我们定义了我们的构造并将其部署到 AWS。今天,我们将重点关注一个基本实践:测试。正确的测试可确保我们的部署按预期工作,并可以使我们避免潜在的问题。

开始测试

首先,您需要将 pytest 添加到项目的依赖项(我们堆栈的主 requirements.txt 文件)。

pip install -r requirements.txt

在我们的项目中,导航到 test 目录,然后导航到 unit 并打开 test_rss_lambda_ddb_socialshare_stack.py 文件。此自动生成的测试文件包含一个示例测试。

我们的堆栈中没有SQS构造,但回顾示例测试可以在一定程度上了解如何测试构造。让我们删除自动生成的示例测试并创建我们自己的测试。

设置测试功能

首先,让我们创建一个可重用的函数来从堆栈中获取 CloudFormation 模板:

测试 DynamoDB 表属性

我们将首先添加一个测试来检查堆栈中的 DynamoDB 表是否具有正确的属性。操作方法如下:

测试 Lambda 函数

接下来,让我们确保我们的堆栈创建正确数量的 Lambda 函数并验证其运行时版本:

运行测试

要运行测试,您可以在终端中执行pytest

pytest

以下是您应该收到的输出:

================================================================================= test session starts =================================================================================
platform darwin -- Python 3.12.4, pytest-8.1.1, pluggy-1.4.0
rootdir: /Users/adrian/Developer/Projects/rss-lambda-ddb-socialshare
plugins: typeguard-2.13.3
collected 2 items                                                                                                                                                                     

tests/unit/test_rss_lambda_ddb_socialshare_stack.py ..                                                                                                                          [100%]

================================================================================= 2 passed in 21.86s ==================================================================================

结论

在我们系列的第 3 部分中,我们学习了如何测试我们的 CDK 构造。在最后一部分中,我们将探讨如何在本地测试 Lambda 函数。

资源

  • Pytest
  • 测试结构
版本声明 本文转载于:https://dev.to/aws-builders/exploring-aws-serverless-deployments-with-cdk-v2-from-rss-to-x-posts-part-3-of-the-odyssey-56c3?1如有侵犯,请联系[email protected]删除
最新教程 更多>

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3