ruby - FactoryGirl 和 Rails 3.2 错误

标签 ruby ruby-on-rails-3 factory-bot

我在 factories.rb 中有这个:

FactoryGirl.create :user do |user|
  user.name "test"
  user.age "40"
end

这在我的测试文件中:

require 'spec_helper'

describe "FirstTests" do
    it "creates a user" do
     user=Factory(:user)
    end
end

像往常一样没有任何效果。有人能解释一下为什么我会收到这个吗?

/usr/local/rvm/gems/ruby-1.9.3-p194/gems/factory_girl-4.1.0/lib/factory_girl/registry.rb:24:in `find': Factory not registered: user (ArgumentError)

一切都在那里。为什么会出现此错误?

最佳答案

您正在使用 create 而不是 define

FactoryGirl.define do
  factory :user do
    name "test"
    age "40"
  end
end

Factory(:user) 而不是 FactoryGirl.create(:user),或者更简单的 create(:user)

https://github.com/thoughtbot/factory_girl/wiki/Usage

关于ruby - FactoryGirl 和 Rails 3.2 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13954570/

相关文章:

ruby - 在终端上使用 Ruby 美化 JSON 数据

ruby-on-rails - 为 Rails 3.1 中的特定路由强制使用 SSL

ruby-on-rails - 基于关系创建范围

ruby-on-rails - ActiveSupport::TestCase vs Test::Unit::TestCase 当单元测试 rails

factory-bot - 工厂女孩 - 我们如何访问传递给方法的覆盖?

ruby-on-rails - 工厂女孩设计用户工厂无效 - 未通过 RSpec 测试

javascript - rails : Passing controller variable to JS using ERB slows page?

ruby-on-rails-3 - 将嵌套模型关联属性与包含匹配

ruby-on-rails - 如何从 Ruby 1.8.7 中的 utf-8 字符串中获取第 i 个字符?

javascript - Ember JS : issue when rendering view