【问题标题】:`require': cannot load such file -- spec_helper (LoadError)`require': 无法加载这样的文件 -- spec_helper (LoadError)
【发布时间】:2015-03-25 15:44:59
【问题描述】:

我正在创作

bundler gem --test=rspec MyGem.

我在其中获取存储库结构。

当我尝试运行 rspec 代码时,出现以下错误:

 `require': cannot load such file -- spec_helper (LoadError)

然后我尝试申请 require relative 但我仍然收到错误:

sheetal@ubuntu:~/sheetal/spec$ rspec sheetal_spec.rb 
\/home/sheetal/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- spec_helper (LoadError)
    from /home/sheetal/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /home/sheetal/sheetal/spec/sheetal_spec.rb:1:in `<top (required)>'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration.rb:1105:in `load'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration.rb:1105:in `block in load_spec_files'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration.rb:1105:in `each'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/gems/rspec-core-3.1.7/lib/rspec/core/configuration.rb:1105:in `load_spec_files'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:96:in `setup'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:84:in `run'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:69:in `run'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/gems/rspec-core-3.1.7/lib/rspec/core/runner.rb:37:in `invoke'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/gems/rspec-core-3.1.7/exe/rspec:4:in `<top (required)>'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/bin/rspec:23:in `load'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/bin/rspec:23:in `<main>'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/bin/ruby_executable_hooks:15:in `eval'
    from /home/sheetal/.rvm/gems/ruby-2.2.0/bin/ruby_executable_hooks:15:in `<main>'

【问题讨论】:

    标签: ruby rspec rspec2 rspec-rails rspec3


    【解决方案1】:

    您正在运行 spec 文件夹中的规范。这弄乱了加载路径。从项目的根目录运行规范:~/sheetal

    rspec spec/sheetal_spec.rb
    

    Rspec 自动将speclib 文件夹添加到加载路径。如果您已经在 spec 文件夹中,则 rspec 会将 spec/spec 添加到加载路径中。

    假设您的代码位于 lib 文件夹中,如果您想在 spec 文件夹中运行测试,则必须将 .../lib 添加到加载路径中。

    【讨论】:

    • 谢谢@Jesper ..我现在可以从我自己的文件夹中运行它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-12
    • 1970-01-01
    • 2017-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-01
    相关资源
    最近更新 更多