8

使用 Rails 教程第一次运行 rspec,p。95. 得到这个输出:

    david@david-desktop:~/rails_projects/sample_app1$ bundle exec rspec /spec/requests/static_pages_spec.rb
/home/david/.rvm/gems/ruby-1.9.3-p362@rails3tutorial2nded/gems/rspec-core-2.9.0/lib/rspec/core/configuration.rb:746:in `load': cannot load such file -- /spec/requests/static_pages_spec.rb (LoadError)
    from /home/david/.rvm/gems/ruby-1.9.3-p362@rails3tutorial2nded/gems/rspec-core-2.9.0/lib/rspec/core/configuration.rb:746:in `block in load_spec_files'
    from /home/david/.rvm/gems/ruby-1.9.3-p362@rails3tutorial2nded/gems/rspec-core-2.9.0/lib/rspec/core/configuration.rb:746:in `map'
    from /home/david/.rvm/gems/ruby-1.9.3-p362@rails3tutorial2nded/gems/rspec-core-2.9.0/lib/rspec/core/configuration.rb:746:in `load_spec_files'
    from /home/david/.rvm/gems/ruby-1.9.3-p362@rails3tutorial2nded/gems/rspec-core-2.9.0/lib/rspec/core/command_line.rb:22:in `run'
    from /home/david/.rvm/gems/ruby-1.9.3-p362@rails3tutorial2nded/gems/rspec-core-2.9.0/lib/rspec/core/runner.rb:69:in `run'
    from /home/david/.rvm/gems/ruby-1.9.3-p362@rails3tutorial2nded/gems/rspec-core-2.9.0/lib/rspec/core/runner.rb:10:in `block in autorun'

这是Gemfile:

    source 'https://rubygems.org'

gem 'rails', '3.2.3'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

group :development, :test do
  gem 'sqlite3', '1.3.5'
  gem 'rspec-rails', '2.9.0'
end


# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '3.2.4'
  gem 'coffee-rails', '3.2.2'
  gem 'uglifier', '1.2.3'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  # gem 'therubyracer', :platform => :ruby
end

gem 'jquery-rails'

group :test do
  gem 'capybara', '1.1.2'
end

已经完成 rails generate rspec:install 和 rails generate integration_test static_pages 命令。想法?

4

3 回答 3

11

删除文件名中的前导斜杠:

bundle exec rspec spec/requests/static_pages_spec.rb
于 2013-01-02T23:50:59.430 回答
1

仅供参考 - 当我的规范文件格式不正确时,我也遇到过这种情况。我错过了一个“做”

于 2013-06-18T04:35:00.280 回答
0

我有同样的问题 - 删除前导“/”修复它。

于 2014-07-31T15:12:25.747 回答