1

我在为我的Rails(4.1.6)应用程序的RSpec(2.14.1)集成测试中使用Capybara(2.4.4)与水豚电子邮件(2.4.0)gem 。我有一个测试来确保电子邮件中链接的功能。虽然Capybara在每个测试运行的不同随机端口上产生其服务器,但电子邮件视图中的Rails路径助手总是生成我的config/environments/test.rb中指定的localhost:3000域。水豚电子邮件:在URL中设置正确的端口

如何指定Rails路径助手使用当前的Capybara测试服务器的域和主机端口?

回答

1

我解决了这个通过指定主机(但不是端口)在test.rb

config.action_mailer.default_url_options = { host: 'localhost' } 

和包括

Capybara.always_include_port = true 

在env.rb.