我已经按照自述文件中的devise_async的说明进行操作,并且正在开发Devise 2.1.2和delay_job。在我的 cucumber 测试中,在注册过程中,我不再收到确认电子邮件。作为测试的一部分,我应该做些什么吗?我已经通过在测试环境中设置以下内容来设置延迟的作业,以跳过实际的测试延迟。

Delayed::Worker.delay_jobs = false

但是即使将其设置为true,它仍然会失败,尽管速度较慢。如果删除devise_async gem和相关行,一切都会恢复原样。

谢谢,
格莱美

最佳答案

记录已提交到数据库后,新版本的devise-async会触发电子邮件。使用RSpec,默认情况下,每个测试都包装在一个事务中。 cucumber 也一样吗?在这种情况下,您需要关闭这些测试事务。

这是我用于RSpec的方法:
http://www.denniskuczynski.com/2012/06/22/changing-individual-test-configuration-based-on-passed-in-options.html

关于ruby-on-rails - 如何使devise_async与Cucumber一起使用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13406248/

10-11 22:32
查看更多