【发布时间】:2011-08-13 21:07:02
【问题描述】:
试用 rspec-rails。我收到一个奇怪的错误 - 没有找到任何路线,即使我在运行 rails s 时可以在浏览器中正常访问它们。
我什至只用 / 试过了
Failure/Error: get "/"
ActionController::RoutingError:
No route matches {:controller=>"action_view/test_case/test", :action=>"/"}
不过,我绝对可以在浏览器中访问 / 和其他资源。设置 rspec 时有什么我可能错过的吗?我将它放入 Gemfile 并运行 rspec:install。
谢谢你, B先生
编辑:这是我的测试
1 require 'spec_helper'
2
3 describe "resource" do
4 describe "GET" do
5 it "contains /" do
6 get "/"
7 response.should have_selector("h1", :content => "Project")
8 end
9 end
10 end
这是我的路线文件:
myApp::Application.routes.draw do
resources :groups do
resources :projects
end
resources :projects do
resources :variants
resources :steps
member do
get 'compare'
end
end
resources :steps do
resources :costs
end
resources :variants do
resources :costs
end
resources :costs
root :to => "home#index"
end
我的 spec_helper.rb:
ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
RSpec.configure do |config|
config.mock_with :rspec
config.include RSpec::Rails::ControllerExampleGroup
config.fixture_path = "#{::Rails.root}/spec/fixtures"
config.use_transactional_fixtures = true
end
我认为这里并没有真正改变任何东西。
【问题讨论】:
-
你能发布你的 spec_helper.rb 吗?
标签: ruby-on-rails rspec routes