Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.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/20.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 LoadError:无法加载这样的文件--…/advision\u controller\u spec.rb_Ruby On Rails_Ruby_Ruby On Rails 4_Rspec_Rspec Rails - Fatal编程技术网

Ruby on rails LoadError:无法加载这样的文件--…/advision\u controller\u spec.rb

Ruby on rails LoadError:无法加载这样的文件--…/advision\u controller\u spec.rb,ruby-on-rails,ruby,ruby-on-rails-4,rspec,rspec-rails,Ruby On Rails,Ruby,Ruby On Rails 4,Rspec,Rspec Rails,更新:我已经添加了我正在测试的控制器和我的gem文件 我正在这个控制器上运行测试,我得到了这个加载错误,我不知道它是从哪里来的。我已经在我的应用程序中运行了其他测试,所以我非常确定rspec运行正常 其他一些可能相关的问题:当我第一次启动rails服务器时,终端返回 在任何源代码中都找不到railties(4.2.5)的正确版本,请运行bundle install以安装缺少的gems 我运行bundle安装,终端返回 安装pg(0.18.4)时出错,捆绑程序无法继续。在绑定之前,请确保gem安装

更新:我已经添加了我正在测试的控制器和我的gem文件

我正在这个控制器上运行测试,我得到了这个加载错误,我不知道它是从哪里来的。我已经在我的应用程序中运行了其他测试,所以我非常确定rspec运行正常

其他一些可能相关的问题:当我第一次启动rails服务器时,终端返回

在任何源代码中都找不到railties(4.2.5)的正确版本,请运行bundle install以安装缺少的gems

我运行bundle安装,终端返回

安装pg(0.18.4)时出错,捆绑程序无法继续。在绑定之前,请确保gem安装pg-v“0.18.4”成功

非常感谢您的帮助

控制器规格:

require 'rails_helper'
include RandomData

RSpec.describe AdvertisementsController, type: :controller do

  let (:my_ad) do
    Advertisement.create(
    id: 1,
    title: RandomData.random_sentence,
    copy: RandomData.random_paragraph,
    price: 99
    )
  end

  describe "GET #index" do
    it "returns http success" do
      get :index
      expect(response).to have_http_status(:success)
    end

    it "assigns [my_ad] to @advertisements" do
      get :index
      expect(assigns(:advertisements)).to eq([my_ad])
    end
  end

end
堆栈跟踪:

4DV3R54RYs-MBP:Development D35TR0Y3R$ rspec spec/controllers/advertisement_controller_spec.rb
/Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/configuration.rb:1435:in load: cannot load such file -- /Users/a666/Development/spec/controllers/advertisement_controller_spec.rb (LoadError)
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/configuration.rb:1435:in block in load_spec_files
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/configuration.rb:1433:in each
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/configuration.rb:1433:in load_spec_files
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/runner.rb:100:in setup
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/runner.rb:86:in run
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/runner.rb:71:in run
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/lib/rspec/core/runner.rb:45:in invoke
    from /Users/a666/.rvm/gems/ruby-2.3.3/gems/rspec-core-3.5.3/exe/rspec:4:in <top (required)>
    from /Users/a666/.rvm/gems/ruby-2.3.3/bin/rspec:22:in load
    from /Users/a666/.rvm/gems/ruby-2.3.3/bin/rspec:22:in <main>
    from /Users/a666/.rvm/gems/ruby-2.3.3/bin/ruby_executable_hooks:15:in eval
    from /Users/a666/.rvm/gems/ruby-2.3.3/bin/ruby_executable_hooks:15:in <main>

文件名似乎是单数
advision\u controller\u spec.rb
,而spec类名
advisementscontroller
似乎是复数。检查您引用的文件名是否正确。

您的系统上是否安装了Postgres如果您可以同时包含gemfile和controllerI将有所帮助我不知道是否有Postgres,但我安装的最后一个软件包之一是postgresql。我将更新w/gem文件和控制器。
class AdvertisementsController < ApplicationController
  def index
  end

  def show
  end

  def new
  end

  def create
  end
end
source 'https://rubygems.org'

 # Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
 gem 'rails', '4.2.5'

 # #1
 group :production do
   gem 'pg'
   gem 'rails_12factor'
 end

 # #2
 group :development do
   gem 'sqlite3'
 end

 group :development, :test do
   gem 'rspec-rails', '~> 3.0'
 end

 # Use SCSS for stylesheets
 gem 'sass-rails', '~> 5.0'
 # Use Uglifier as compressor for JavaScript assets
 gem 'uglifier', '>= 1.3.0'
 # Use CoffeeScript for .coffee assets and views
 gem 'coffee-rails', '~> 4.1.0'
 # Use jquery as the JavaScript library
 gem 'jquery-rails'
 gem 'turbolinks'
 gem 'bootstrap-sass'
 gem 'pry-rails'