ruby on rails rspec命令

时间:2013-05-27 09:14:55

标签: ruby-on-rails rspec rspec-rails

作为初学者,我正在关注迈克尔哈特的红宝石第2版教程!

当我使用集成测试模块

运行命令行时
rspec test/integration/static_pages_test.rb

它没有显示出Hartl的内容。相反,它显示了这一点:

/Users/Name/rails_testprojects/protego/test/integration/static_pages_test.rb:1:in `require': no such file to load -- test_helper (LoadError)
    from /Users/Name/rails_testprojects/protego/test/integration/static_pages_test.rb:1:in `<top (required)>'
    from /Users/Name/.rvm/gems/ruby-1.9.2-p320@twitclone/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `load'
    from /Users/Name/.rvm/gems/ruby-1.9.2-p320@twitclone/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `block in load_spec_files'
    from /Users/Name/.rvm/gems/ruby-1.9.2-p320@twitclone/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `map'
    from /Users/Name/.rvm/gems/ruby-1.9.2-p320@twitclone/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `load_spec_files'
    from /Users/Name/.rvm/gems/ruby-1.9.2-p320@twitclone/gems/rspec-core-2.11.1/lib/rspec/core/command_line.rb:22:in `run'
    from /Users/Name/.rvm/gems/ruby-1.9.2-p320@twitclone/gems/rspec-core-2.11.1/lib/rspec/core/runner.rb:69:in `run'
    from /Users/Name/.rvm/gems/ruby-1.9.2-p320@twitclone/gems/rspec-core-2.11.1/lib/rspec/core/runner.rb:8:in `block in autorun'

注意:在Hartl的教程中,集成测试位于不同的文件夹中!

bundle exec rspec spec/requests/static_pages_spec.rb

有人可以解释一下发生了什么吗?我是一个初学者,刚刚开始学习他的教程!

1 个答案:

答案 0 :(得分:2)

你说你正在关注Michael Hartl's Rails Tutorial book,但你真的没有关注它;至少不如要求严格; - )

Rails教程书使用RSpec作为首选测试框架。在rspec中,所有测试文件都在spec文件夹下,并被称为specs

Rails by default附带Test::Unit测试框架,并将文件放在test文件夹下。

你混合他们两个并且感到困惑。

我建议你坚持使用Rails教程书中的内容,并严格按照那里的说明充分利用你在学习rails的时间。