Tôi đang theo hướng dẫn của Michal Hartls Rails Chương 7. Tôi đã cài đặt gem Girl Factory. Tôi cứ bị lỗi này khi tôi chạy thử nghiệm của tôiNhà máy không được đăng ký: người dùng
Failures:
1) UsersController GET 'show' should be successful
Failure/Error: @user = FactoryGirl.create(:user)
ArgumentError:
Factory not registered: user
# ./spec/controllers/users_controller_spec.rb:10:in `block (3 levels) in <top (required)>'
Finished in 0.66336 seconds 42 examples, 1 failure
Failed examples:
rspec ./spec/controllers/users_controller_spec.rb:14 # UsersController GET 'show' should be successful
Gemfile
group :test do
gem 'autotest', '4.4.6'
gem "autotest-growl", "~> 0.2.16"
gem "autotest-rails", "~> 4.1.2"
gem "rspec", "~> 2.9.0"
gem 'rspec-rails', '2.9.0'
gem 'webrat', '0.7.3'
gem "spork", '0.9.0'
gem 'annotate', '~> 2.4.1.beta'
gem "factory_girl", "~> 3.2.0"
end
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
gem 'therubyracer', :platform =>
user_controller_spec.rb tôi là
require 'spec_helper'
describe UsersController do
render_views
describe "GET 'show'" do
before(:each) do
@user = FactoryGirl.create(:user)
end
it "should be successful" do
get :show, :id => @user
response.should be_success
end
end
describe "GET 'new'" do
it "should be successful" do
get :new
response.should be_success
end
it "should have the right title" do
get :new
response.should have_selector('title', :content => "Sign up")
end
end
end
factories.rb tôi là
FactoryGirl.create :user do |user|
user.name "Mark Brown"
user.email "[email protected]"
user.password "foobar"
user.password_confirmation "foobar"
end
tôi đã thay đổi
Factory(:name)
để
FactoryGirl.create(:user)
trên dòng 10 trong user_controller_spec.rb
bởi vì tôi đã nhận được một cảnh báo deprication tôi. Tôi nghĩ rằng sẽ sửa chữa nó nhưng bây giờ im chỉ nhận được.
Factory not registered: user
Ai đó có thể cho tôi biết điều gì đang diễn ra?
Điều này phù hợp với tôi. Cảm ơn! –