簡體   English   中英

RSpec - 找不到spec / spec_helper.rb

[英]RSpec - Can't find spec/spec_helper.rb

我正在關注Michael Hartl的Ruby on Rails 4書,但找不到spec/spec_helper.rb 這是他的書http://ruby.railstutorial.org/ruby-on-rails-tutorial-book的鏈接,我正在研究第3章測試驅動開發部分。

我運行此代碼來調用RSpec和static_pages_spec.rb

$ rails generate integration_test static_pages      
invoke  rspec      
create    spec/requests/static_pages_spec.rb

在此之后,我需要將Capybara DSL添加到RSpec幫助文件中。

spec/spec_helper.rb

# This file is copied to spec/ when you run 'rails generate spec:install'
…
RSpec.configure do |config|  
.  .  .  
config.include Capybara::DSL
end

問題:我的問題是我無法找到或打開spec/spec_helper.rb 我已經嘗試了$subl spec/spec_helper.rb但它只打開了一個空的文本編輯器文件。

為RSpec和TDD添加了我的Gemfile的跟隨:

group :development, :test do  
gem 'sqlite3', '1.3.8'  
gem 'rspec-rails', '2.13.1'
end

group :test do  
gem 'selenium-webdriver', '2.35.1'  
gem 'capybara', '2.1.0'
end

冉:

$ bundle install --without production
$ bundle update
$ bundle install
$ rails generate rspec:install
$ rails generate integration_test static_pages

在此之后,我假設開spec/sepc_helper.rb並添加CapybaraDSL並運行此$ bundle exec rspec spec/requests/static_pages_spec.rb 由於我找不到spec_helper.rb ,我只是在終端上運行它以查看發生了什么並得到以下錯誤:

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

我不知道為什么我找不到spec_helper。 我閱讀了其他教程,看起來spec_helper文件在加載RSpec時會自動形成。

仔細檢查您是否從root rails目錄運行rspec spec/ ,而不是從spec目錄中運行。

檢查Gemfile:

group :development, :test do
  gem 'rspec-rails', '~> 3.0.0.beta'
end

在控制台上運行bundle install命令:

rails generate rspec:install

在項目文件夾中嘗試bash:

find -name spec_helper.rb

Rspec使用Rspec有一個完整的參考: https//github.com/rspec/rspec-rails

確保安裝了rspec gem。 您可以通過在Gemfile中聲明它來完成此操作

https://github.com/rspec/rspec-rails

在Gemfile中

group :development, :test do
  gem 'rspec-rails', '~> 3.0.0.beta'
end

bundle install

bundle exec rails generate rspec:install

這些步驟將創建運行rspec所需的內容。

值得一提的是偶爾我嘗試在根目錄以外的文件夾中運行rspec,這是彈出的錯誤。 我似乎記得這可以以某種方式修改,但不知道如何。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM