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.