在本地主机上运行时测试可确认(design)



我是新手,在Rails3应用程序中使用Devise gem进行身份验证。我想测试Devisegem附带的confirmable模块提供的电子邮件确认功能。我的测试工作正常,但由于我在localhost上运行该应用程序,我无法找到在浏览器中测试该应用程序功能的方法,因为ActionMailer无法将电子邮件发送到注册帐户。我该怎么做?我需要禁用Devise的confirmable模块以便在浏览器上进行后续测试吗?或者我可以设置我的Actionmailer向注册帐户发送电子邮件吗。非常感谢

您的问题有点模棱两可。您可以将测试/开发环境配置为实际发送电子邮件,但那该怎么办?你要用确认令牌解析那封电子邮件中的链接吗?

如果您的业务逻辑允许,您可能需要考虑在device.rb初始值设定项中设置config.allow_unconfirmed_access_for = 1.minute

该设置允许用户在给定的时间段内登录,即使电子邮件地址未经确认。实际上,用户将能够立即使用您的平台,您的测试将不再需要进行确认。

请注意,对于dev中的手动测试,您可以从development.log.复制确认链接

作为个人建议,我会完全放弃Cucumber,除非这是一个明确要求BDD的客户的项目。在大多数项目中,您会发现手头有默认的测试工具。

我相信有一个confirmed_at字段是在确认用户时设置的。

最新更新