首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RSpec: RSpec::Support:Module (NoMethodError)的未定义方法`require_rspec_core

RSpec: RSpec::Support:Module (NoMethodError)的未定义方法`require_rspec_core
EN

Stack Overflow用户
提问于 2015-05-13 04:23:36
回答 1查看 405关注 0票数 0

我正在尝试使用ChefSpec运行一个HelloWorld类型的示例。我运行$ chef generate cookbook learn_chef2生成了一个具有适当目录结构的厨师食谱。

然后我用default.rb创建了一个超级简单的厨师食谱:

代码语言:javascript
复制
package 'ant'
package 'php5'
package 'git'

和我在default_spec.rb中的ChefSpec测试:

代码语言:javascript
复制
#require 'spec_helper'
require 'chefspec'
require 'chefspec/berkshelf'

describe 'package::install' do

  let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }

  it 'converges successfully' do
    expect(chef_run).to install_package('ant')
  end
end

但是,当我运行rspec时,我得到以下结果:

代码语言:javascript
复制
/var/lib/gems/2.1.0/gems/rspec-core-3.2.3/lib/rspec/core/formatters/progress_formatter.rb:1:in `<top (required)>': undefined method `require_rspec_core' for RSpec::Support:Module (NoMethodError)
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/lib/ruby/vendor_ruby/rspec/core/configuration.rb:1093:in `built_in_formatter'
    from /usr/lib/ruby/vendor_ruby/rspec/core/configuration.rb:573:in `add_formatter'
    from /usr/lib/ruby/vendor_ruby/rspec/core/configuration.rb:589:in `reporter'
    from /usr/lib/ruby/vendor_ruby/rspec/core/command_line.rb:25:in `run'
    from /usr/lib/ruby/vendor_ruby/rspec/core/runner.rb:80:in `run'
    from /usr/lib/ruby/vendor_ruby/rspec/core/runner.rb:17:in `block in autorun'

我是Ruby和RSpec的新手,我确信这是一个简单的配置问题。有什么想法吗?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2015-05-13 04:44:29

通常,您需要做的是将require 'rspec'作为第一行,但我非常确定这是在spec_helper.rb中编写的,您已经在第1行注释掉了它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30200732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档