gpt4 book ai didi

cypress - 通过 LocalStack/AWS SES 接收电子邮件

转载 作者:行者123 更新时间:2023-12-04 12:02:41 27 4
gpt4 key购买 nike

我正在尝试使用 LocalStack 进行端到端测试,但无法阅读通过 LocalStack/SES 发送的电子邮件。有没有办法做到这一点?

我希望我的 Cypress e2e 测试调用我的后端服务,后端服务撰写一封包含链接的电子邮件并通过 LocalStack/SES 发送电子邮件。然后我希望我的 e2e 测试等待该电子邮件,阅读其中发送的链接,然后继续。

我设法调用 LocalStack 的 SES 来发送电子邮件,并且我知道支持 LocalStack 的 moto 库将发送的消息存储在内存中。有没有办法阅读这些消息?

最佳答案

Localstack 使用 Moto,Moto 确实公开了检查已发送电子邮件的能力。在这里讨论
https://github.com/spulec/moto/issues/1392
看一看 localstack 的代码,看起来它们并没有公开一个函数来访问这些信息。
https://github.com/localstack/localstack/blob/master/localstack/services/ses/ses_starter.py
您需要向 Localstack 发出拉取请求并添加一个公开 ses_backend 或特别是 sent_messages 数组的函数。
从 moto.ses 导入 ses_backend
ses_backend.sent_messages
我没有将 localstack 用于 SES 我正在针对我们真正的质量保证测试环境(真正的 SES)运行 E2E 测试。在这种情况下,您可以使用以下方法之一。
您需要的是一种阅读收件箱并按标题甚至正文检查电子邮件的编程方式。

  • 邮龙https://mailosaur.com/
    该 API 易于与适合我们用例的 Java 一起使用。除此之外,他们的销售/支持部门的回应。他们也有我们没有使用的短信服务。
  • MailSlurp https://www.mailslurp.com/
    这是我们的第一选择,因为它是我们发现的第一个,而且看起来很不错。但我们试图联系他们,但从未回复过。他们仍然没有回复,我们发送了六封电子邮件。
  • 邮件陷阱 https://mailtrap.io/
    如果您使用 JavaScript(请使用 Typescript),因为它是基于 REST 的,所以还有第三种服务适合。但是对于 Java REST API,我不喜欢的代码最终变得非常冗长。但是如果你使用 JavaScript,这个选项是合适的。

  • 每个的价格都是可比的 MailTrap 也有免费选项。

    关于cypress - 通过 LocalStack/AWS SES 接收电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62289515/

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