有没有办法设置一个虚假的电子邮件收件箱,以检查电子邮件是否在轨道上的ruby中发送?

Lon*_*Guy 3 ruby rubygems ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

我正在测试多个用户帐户,并且不想设置不同的电子邮件进行测试.我需要知道的是,该电子邮件是否已成功从我的应用程序发送.

有没有办法设置一个虚假的电子邮件收件箱,以检查是否正在Ruby on Rails中发送电子邮件?

mu *_*ort 9

设置MailCatcher:

MailCatcher运行一个超级简单的SMTP服务器,它捕获发送给它的任何消息以显示在Web界面中.运行mailcatcher,将您喜欢的应用程序设置为交付smtp://127.0.0.1:1025而不是默认的SMTP服务器,然后检查http://127.0.0.1:1080以查看到目前为止已到达的邮件.

这为您做了几件有用的事情:

  • 您不仅可以看到正在发送电子邮件,还可以查看电子邮件(文本和HTML部分).
  • 您不必担心向任何人发送垃圾邮件,因为您的应用程序发送的所有电子邮件都会直接发送给MailCatcher.
  • 您不必担心在任何地方设置一堆真实的电子邮件帐户,MailCatcher不关心地址是什么,它只是抓取电子邮件并显示给您.

最重要的是,您的应用程序不必更改即可使用它,您只需设置适当的SMTP值即可.这意味着您没有为开发,测试和生产中的电子邮件处理运行不同的代码路径,这意味着更少的错误和深夜灾难调用.