Ruby on rails 访问装置为Rspec和Capybara测试配置的消息

Ruby on rails 访问装置为Rspec和Capybara测试配置的消息,ruby-on-rails,rspec,devise,capybara,Ruby On Rails,Rspec,Devise,Capybara,我试图测试一个未登录的用户在尝试访问安全内容时是否被引导到Desive注册页面。我用RSpec和水豚来做测试 为了确保他们到达登录页面,我要确保他们最终到达的页面包含Desive登录页面notify散列的内容。(默认情况下,这是:您需要登录或注册才能继续。) 而不是像这样编写测试: page.should have_content "You need to sign in or sign up before continuing." 是否有办法访问配置的消息(以防我以后更改)?比如: page

我试图测试一个未登录的用户在尝试访问安全内容时是否被引导到Desive注册页面。我用RSpec和水豚来做测试

为了确保他们到达登录页面,我要确保他们最终到达的页面包含Desive登录页面notify散列的内容。(默认情况下,这是:
您需要登录或注册才能继续。

而不是像这样编写测试:

page.should have_content "You need to sign in or sign up before continuing."
是否有办法访问配置的消息(以防我以后更改)?比如:

page.should have_content Devise::Messages.Login_required

designe消息存储在
config/locales/designe.*.yml
中,因此您可以像访问任何其他翻译一样访问它们:

page.should have_content I18n.t("devise.failure.unauthenticated")