Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rspec绑定器:未能加载命令:Rspec_Ruby On Rails_Ruby_Rspec - Fatal编程技术网

Ruby on rails Rspec绑定器:未能加载命令:Rspec

Ruby on rails Rspec绑定器:未能加载命令:Rspec,ruby-on-rails,ruby,rspec,Ruby On Rails,Ruby,Rspec,运行rspec时出现以下错误 bundler: failed to load command: rspec (/home/bastien/.rbenv/versions/2.3.1/bin/rspec) NameError: uninitialized constant CarrierWave::Storage::Fog 这是我的GEM文件的“测试部分” group :development, :test do gem 'rspec' gem 'rspec-rails' gem 'factor

运行rspec时出现以下错误

bundler: failed to load command: rspec (/home/bastien/.rbenv/versions/2.3.1/bin/rspec)
NameError: uninitialized constant CarrierWave::Storage::Fog
这是我的GEM文件的“测试部分”

group :development, :test do
gem 'rspec'
gem 'rspec-rails'
gem 'factory_girl_rails'
gem 'capybara'
gem 'selenium-webdriver'
gem 'database_cleaner'
gem 'shoulda-matchers'
gem 'spring'
end
我已经尝试了很多方法来纠正这个问题,包括增加这两种方法

rails_helper.rb
spec_helper.rb
这些不同的要求

require 'spec_helper'
require 'rails_helper'
require 'rspec/rails'
require 'carrierwave'
require "rails_helper"
require 'rails/all'
require 'rubygems'
编辑

Carrierwave初始值设定项文件

CarrierWave.configure do |config|
config.fog_credentials = {
provider:               'AWS',
aws_access_key_id:      ENV['S3_KEY'],
aws_secret_access_key:  ENV['S3_SECRET'],
region: 'us-east-1'

}

if Rails.env.test? || Rails.env.cucumber?
CarrierWave.configure do |config|
config.storage           = :file
config.enable_processing = false
end
end

config.cache_dir        = "#{Rails.root}/tmp/uploads" 
config.fog_directory    = ENV['S3_BUCKET_NAME']
end

当应用程序正常工作时,Rspec仍然不工作。有人知道我如何解决这个问题吗?是否有一个快速而肮脏的修复程序,允许我通过排除carrierwave相关项目来测试应用程序的其他部分?谢谢。

生成问题的文件位于uploader文件夹(doc\u uploader.rb)中

未使用正确声明测试环境

if Rails.env.development?
  storage :file
else
  storage :fog
end
我必须换成

if Rails.env.development? || Rails.env.test?
  storage :file
else
  storage :fog
end

您是否尝试过在google上搜索未初始化的常量CarrierWave::Storage::Fog?有很多选项:Gemfile、CarrierWave初始值设定项、根据Env.Hi Bastien配置CarrierWave/Fog的任何位置。您的
初始值设定项/carrierwave.rb
rile看起来像什么?