- 更新日: 2013年11月13日
- Rails
Factory already registered: user (FactoryGirl::DuplicateDefinitionError) の対策
スポンサーリンク
Rails でのテストに FactoryGirl を使ってみているのですが、本日以下のエラーが出た。
1 2 3 |
/path/to/railsapp/vendor/bundle/ruby/2.0.0/gems/factory_girl-4.2.0/lib/factory_girl/decorator.rb:10:in `method_missing': Factory already registered: user (FactoryGirl::DuplicateDefinitionError) |
【お知らせ】 英単語を画像イメージで楽に暗記できる辞書サイトを作りました。英語学習中の方は、ぜひご利用ください!
スポンサーリンク
Factory already registered: user (FactoryGirl::DuplicateDefinitionError) のメッセージで Factory はすでに登録されている、と注意されています。また user (FactoryGirl::DuplicateDefinitionError) から推測されるとおり、FactoryGirl でのテスト用モデルデータである user の定義が重複してるよ、とのことらしい。
案の定、spec/ 以下を探してみたら、spec/factories.rb と spec/factories/user.rb の二箇所で同じ userモデルデータの定義がされていたので、spec/factories/user.rb のほうを削除したところ、エラーが消え無事にテストを実行できました。
以下の Stack Overflow の質問も参考になりました。
スポンサーリンク
パーフェクト Ruby on Rails は、最近読んだ Rails 本の中では一番役に立った本です。Chef や Capistrano など Rails と共によく使用される技術にも触れてあります。Ruby on Rails 4 アプリケーションプログラミングは、入門的な内容で Rails の機能全体を網羅されています。
- Rails の関連記事
- RailsでMySQLパーティショニングのマイグレーション
- Rails ActiveRecordでdatetime型カラムのGROUP BY集計にタイムゾーンを考慮する
- RailsプラグインGemの作成方法、RSpecテストまで含めたrails pluginの作り方
- RailsでAMPに対応するgemをリリースしました
- Railsでrequest.urlとrequest.original_urlの違い
- Railsでwheneverによるcronバッチ処理
- Google AnalyticsのRails Turbolinks対応
- Railsアプリにソーシャル・シェアボタンを簡単設置
- Rails監視ツール用にErrbitをHerokuで運用
- Facebook APIバージョンのアップグレード手順(Rails OmniAuth)
Leave Your Message!