问题标签 [factory-bot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - Factory Girl:如何在不创建新记录的情况下将一条记录关联到另一条记录?
我正在使用 Factory Girl/Rspec2/Rails 3。
在factory.rb中,我有:
然后在我的 rspec 测试中我有:
当我运行测试时,我得到:
我理解失败的原因是因为 FactoryGirl 正在创建另一个组织(同名)。
但我想做的是创建多个与同一个组织相关联的成员。我怎么做?
谢谢。
肖恩
rspec - 使用 FactoryGirl 时 Rspec 测试失败
我是第一次使用 FactoryGirl,并为以下控制器代码设置了测试
我的规范是测试以查看该方法是否更新了选定(选定:布尔)属性的值,以回答为真。
我发现我的更改在我测试之前就被回滚了。我的意思是 update_attributes 确实被调用了,它将 select 属性的值更新为 true,但在我的测试中,它说 answer.selected 字段没有更新。
会想要一些帮助吗?
ruby-on-rails - FactoryGirl:如何在不传递参数的情况下定义工厂
我正在使用 Rails 3 / factory_girl_rails / Rspec 2 和 Ruby 1.8
我这样定义我的工厂:
我的测试运行良好。
我注意到在工厂女孩页面上,他们在示例中定义了工厂,而在 do 之后没有传递参数( http://github.com/thoughtbot/factory_girl):
为了清理我的代码,我尝试模拟定义工厂而不在do之后传递参数并将我的代码更改为:
但我得到了错误:
我究竟做错了什么?或者它是一个兼容性问题 - 即,也许 factory_girl_rails(适用于 rails 3)与 factory_girl 的工作方式不同)。
谢谢。
肖恩
ruby-on-rails - 工厂女孩错误与 has_many 关系
我有以下工厂:
哪些正在建模以下类
当我通过 shoulda 运行这个测试时:
我收到以下错误:
Factory::AttributeDefinitionError:属性已定义:电子邮件
我完全坚持这一点,谁能指出我正确的方向。我正在使用 factory_girl 1.3.2。
ruby-on-rails - 设计/黄瓜 - 添加确认用户存在的步骤
我是黄瓜的新手,我发现以下代码片段来测试设计登录功能。但是,似乎又少了一步,我没有找到任何解决方案:
这里是以下代码:
功能/身份验证/session.feature
特征/step_definitions/authentication_steps.rb
规格/工厂/user.rb
这里是原始代码的链接
非常感谢您的帮助!!
ruby-on-rails-3 - 工厂女孩 to_json 问题
当我在 Factory Girl 对象上调用 to_json 时,我得到一个 nil.[] 错误。
我在 Rails 3 上使用 DataMapper,当我在真实的 DataMapper 对象上调用 to_json 时,它工作得很好。知道为什么 Factory Girl 对象会失败吗?
另外,我发现了以下内容:
factory_girl_object.to_json
工作正常。
[factory_girl_object].to_json
失败。
DataMapper 显然使用 DataMapper::Collection 对象而不是数组,它处理 to_json 的内容与数组的处理方式略有不同。但是,我似乎无法弄清楚如何创建一个 DataMapper::Collection 对象来保存我的 Factory_Girl 对象。
想法?
ruby-on-rails - 使用 should_redirect_to 的“创建”功能测试失败
我在尝试使用 'should' 和 'factory_girl' 为 Rails 应用程序中的 'create' 创建功能测试时遇到问题。我创建了一个简单的项目,脚手架用户,在 test_helper.rb 中添加了“should”(我系统上的当前 gem 版本 2.11.3)和“factory_girl”。手动创建用户工作正常。以下是重现故障的步骤:
- 轨道项目
- 脚手架用户名:字符串
添加 test_helper.rb :
耙分贝:迁移
为用户编写以下功能测试(覆盖 users_controller_test.rb ):
/li>使用“rake test:functionals”运行测试显示失败:
预期的响应是重定向到 ,
<http://test.host/users/1001>
但重定向到<http://test.host/users>
.
我也玩过“should_redirect_to”,因为我看到“should_redirect_to”已被弃用,但没有运气。你有什么想法 ?
先感谢您,
玛丽安·瓦西里·卡莱曼。
ruby-on-rails-3 - 得到使用 Rails 3 和 factory_girl_rails
我知道我错过了一些基本的东西,但我迷失了。查看 factory_girl 网站后,我在 Gemfile 中安装了 factory_girl_rails gem:
当我运行“捆绑安装”时,我看到 factory_girl_rails gem 和依赖 factory_girl gem 都安装了。
但是,在创建我的工厂文件并将其放入 spec/support 目录之后:
当我运行 rspec 时,我收到消息 LoadError: no such file to load -- factory_girl
我究竟做错了什么?
谢谢!
ruby-on-rails - 与没有主键 ID 的模型关联
我在 Rails 2 上,使用的最新版本 factory_girl 是 1.2.4
我有 2 张桌子:
种族(代码,描述)
人(id,姓名,...,*ethnicity_code*,...)
people.ethnicity_code 是外键
在 factory_girl factory.rb 中:
我的模型具有正确的关联集和“set_primary_key :code”
当我这样做时Factory(:person)
,由于外键约束,我总是会收到插入错误。似乎它从关联中获得了不正确的主键。工厂女孩可以很好地创建种族记录,但它试图在 people 表中插入一个值“1”作为种族代码。
ruby-on-rails - 是否有配置设置可以将所有 factory_girl 工厂的 :default_strategy 全局设置为 :build ?
我知道您可以覆盖创建工厂对象的默认策略,如下所示:
但我想知道是否可以将设置添加到 factory_girl 配置文件或文件中/environments/test.rb
,以便
默认情况下构建一个Person
对象,而不是默认创建一个对象。