我在SO上看到的类似问题很少,但是没有一个给定的解决方案有效。我像往常一样安装了rspec / factorygirl,我遇到了一些我无法理解的问题。似乎rspec无法看到我的模型。
group :development, :test do
gem 'rspec-rails', '~> 3.0'
gem 'factory_girl_rails'
gem 'database_cleaner'
gem 'faker'
end
group :test do
gem 'guard-rspec'
gem 'capybara'
end
我已经运行rails generate rspec:install
来生成spec/
dir文件结构(因此我的spec_helper和rails_helper文件包含环境要求等的正确行。)
require 'spec_helper'
describe List do
before(:each) do
@list = FactoryGirl.build(:list)
end
it 'is invalid without name' do
@list.title = nil
expect(@list).to_not be_valid
end
end
https://gist.github.com/mbajur/68e96ab77f43d50a73cf
https://gist.github.com/mbajur/677c9936347be8b18c7d
https://gist.github.com/mbajur/49668f280891fa80f288
当我运行rspec
时,它会在uninitialized constant List (NameError)
文件的第3行提供list_spec.rb
。
答案 0 :(得分:1)
将describe List do ...
更改为describe 'List' do ...
,并确保在helper文件中需要所有需要的lib并留下_helper.rb
。
答案 1 :(得分:0)
问题是由于我在所有规格中都需要spec_helper
这一事实,而我需要rails_helper
。
因此,每个spec文件应从以下行开始:
require 'rails_helper`