2013-05-27 37 views
2

因此,作为初学者,我正在关注迈克尔哈特在rails第二版教程中的红宝石!ruby​​ on rails rspec命令

当我运行与集成测试模块

rspec test/integration/static_pages_test.rb 

它没有显示什么哈特尔的获得命令行。相反,它显示了这一点:

/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/[email protected]/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `load' 
    from /Users/Name/.rvm/gems/[email protected]/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `block in load_spec_files' 
    from /Users/Name/.rvm/gems/[email protected]/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `map' 
    from /Users/Name/.rvm/gems/[email protected]/gems/rspec-core-2.11.1/lib/rspec/core/configuration.rb:780:in `load_spec_files' 
    from /Users/Name/.rvm/gems/[email protected]/gems/rspec-core-2.11.1/lib/rspec/core/command_line.rb:22:in `run' 
    from /Users/Name/.rvm/gems/[email protected]/gems/rspec-core-2.11.1/lib/rspec/core/runner.rb:69:in `run' 
    from /Users/Name/.rvm/gems/[email protected]/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 

有人能解释一下是怎么回事?我是一名初学者,刚刚开始学习他的教程!

+0

要求'test_helper'这是写在你的文件的某处?这就是为什么它会抛出错误 –

回答

2

你说你跟着Michael Hartl's Rails Tutorial book,但你真的没有跟着它;至少没有按照要求严格;-)

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

Rails by default自带​​测试框架,并将文件放在test文件夹下。

您正在混合它们并且感到困惑。

我建议你坚持使用Rails教程中的内容,并严格按照指示进行操作,以充分利用学习时间。