2013-09-27 32 views
3

我正在尝试在CodeEval上练习编写测试来应对挑战。每个挑战我创建一个文件夹,在项目文件夹内创建'lib'&'spec'文件夹。从命令行我运行:RSpec LoadError

rspec --init 

它告诉我,“投机/ spec_helper.rb” &“.rspec”创建。我把源文件放在'lib'文件夹& spec文件中'spec/lib'文件夹&相应地命名它们。这里有一个规范的例子:从项目的根目录下我跑

require 'spec_helper' 
require 'file_name' 

describe '#swap_elements' do 
    it 'should swap 1 pair of numbers' do 
    swap_elements('1 2 3 4 5 6 7 8 9',0,8).should == '9 2 3 4 5 6 7 8 1' 
    end 
end 

rspec /spec/lib/file_name_spec.rb 

,结果如下:

/Users/username/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `load': cannot load such file -- /spec/lib/swap_elements_spec.rb (LoadError) 
from /Users/username/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `block in load_spec_files' 
from /Users/username/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `each' 
from /Users/username/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `load_spec_files' 
from /Users/username/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.13.1/lib/rspec/core/command_line.rb:22:in `run' 
from /Users/username/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.13.1/lib/rspec/core/runner.rb:80:in `run' 
from /Users/username/.rvm/gems/ruby-2.0.0-p195/gems/rspec-core-2.13.1/lib/rspec/core/runner.rb:17:in `block in autorun' 

这是最近的问题&我尚未安装任何更新的rspec宝石。任何想法为什么发生这种情况?

+0

什么是你的宝石文件中搜索? – Gerep

+0

这些是Ruby测试,而不是Rails测试 – evkline

+0

那么,你有'/ spec/lib/swap_elements_spec.rb'文件,它是“可加载的”吗? –

回答

5

在路径开始处使用斜线表示根。

你想干什么

rspec spec/lib/file_name_spec.rb 

所以它会在当前目录

+0

这是正确答案:) –

+0

谢谢Ismael! – evkline

+0

不客气@ EMK428 :)不要忘记接受它。 –