Rspec test NameError: uninitialized constant trying to tie a class into a rspec test

Rspec test NameError: uninitialized constant trying to tie a class into a rspec test

所以我不太熟悉 ruby 或 rspec,我有一个 rspect 测试,这里是它的代码片段:

describe 'thingMagic' do 
    let(:tester) { testClass.testing }
    it { expect(tester).to be whatever doesn't matter at this point

所以我写了一个叫testClass的class,里面有一个叫testing的方法。这是它的样子:

class testClass
  def testing
    return pass_test
  end
end

我想弄清楚什么时候我 运行 rspec 它失败并在控制台中显示此错误:

 Failure/Error: let(:tester) { testClass.testing }
     NameError:
       uninitialized constant testClass

我似乎不知道如何初始化这个 class。 rspec 中是否有我必须修改的文件,为其提供该文件的相对路径?

经过大量谷歌搜索和纯粹的运气。我学会了: 我需要:

require_relative '<path_to_file>'

在我将其添加到 spec.rb 文件之后。我重新 运行 rspec 测试,它开始工作了。

这是很好的文档,基本上让我意识到我错过了什么: http://ruby.about.com/od/faqs/qt/Nameerror-Uninitialized-Constant-Object-Something.htm