如何让Capybara使用路由助手

Ner*_*ian 11 rspec ruby-on-rails capybara

我正在使用rails 3,Steak&Capybara.我有宁静的资源,是否可以使用路由助手可用于视图和控制器?

Ner*_*ian 14

你只需将它放在你的spec_helper.rb上

config.include Rails.application.routes.url_helpers
Run Code Online (Sandbox Code Playgroud)

在配置定义块中,即包装的块:

RSpec.configure do |config|
# All your config.include calls go here.
end
Run Code Online (Sandbox Code Playgroud)

然后您可以在功能规格上使用它:

scenario "Show school" do
school = School.create!(:name => "Pablo de Olavide")
visit(school_path(school))
save_and_open_page
page.has_content?("Pablo de Olavide").should == true
end
Run Code Online (Sandbox Code Playgroud)

不使用:

include ActionController::UrlWrite
Run Code Online (Sandbox Code Playgroud)

因为它在rails 3中被弃用了