2012-03-16 57 views
0

我是新来的黄瓜在rails中,我使用Devise gem进行Rails3应用程序中的身份验证。我想测试Devise宝石提供的confirmable模块提供的电子邮件确认功能。我的测试工作正常,但因为我在localhost上运行应用程序,所以我无法找到一种方法来在我的浏览器中测试应用程序的功能,因为ActionMailer无法将电子邮件发送到注册帐户。我怎样才能做到这一点?我是否需要禁用Devise的confirmable模块才能在浏览器上进行后续测试,或者我可以设置我的Actionmailer将电子邮件发送到注册帐户。 非常感谢在本地主机上运行时测试可确认(设计)

+0

这不是正确的答案,但您可以随时打开命令行,并使用'rails console'或'rails db'编辑某个用户的可确认属性。 – Ashitaka 2012-03-16 21:24:47

回答

0

你的问题有点模糊不清。你可能配置测试/开发环境来实际发送电子邮件,但那又如何?你打算使用确认标记解析该电子邮件链接吗?

如果你的业务逻辑允许的情况下,你可能要考虑在device.rb初始化设置config.allow_unconfirmed_access_for = 1.minute

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

请注意,对于开发手动测试,你可以从development.log复制的确认链接。

作为一个个人建议,我会完全抛弃Cucumber,除非这是一个明确要求BDD的客户的项目。在大多数项目中,您都可以使用默认的测试工具。

0

我相信有一个confirmed_at字段,当用户被确认时会被设置。

相关问题