我正在尝试使用FactoryGirl为我的Rails应用程序创建第一个控制器测试,但我一直收到以下错误:
我的控制器测试代码如下:
uninitialized constant FactoryGirl
我的Factories.rb文件如下所示:
FactoryGirl.define do
factory :offer, class: "Offer" do |f|
f.title "Some title"
f.description "SomeDescription"
end
end
我的控制器测试代码如下:
require 'spec_helper'
describe OffersController do
def valid_session
{}
end
describe "GET index" do
before {
@offer = FactoryGirl.create(:offer)
}
it "assigns all offers as @offers" do
get :index, {}, valid_session
assigns(:offers).should eq([@offer])
end
end
end
我的 Gemfile 文件如下:
group :development, :test do
gem 'sqlite3'
gem 'rspec-rails'
gem 'capybara', '1.1.2'
gem 'factory_girl_rails', '>= 4.1.0', :require => false
end
< p>由于缺少FactoryGirl,我可能会错过什么?< /p>
:require => false
。这样,您就可以在rails console
中使用FactoryGirl
并使用rails generate factory_girl:model
生成模型。 - Hauleth