新手问题 为什么要使用 FactoryGirl?

hw676018683 · 2014年11月07日 · 最后由 hbin 回复于 2014年11月08日 · 2439 次阅读

为什么不直接在 test 数据库中插入种子数据,测试的时候直接使用,感觉用 FactoryGirl 的时,存在关联的时候,特别是关联很复杂时,感觉好麻烦

--可能上面没有描述清楚,我的意思是在 seed.rb 中插入整个测试要使用的数据,这样每次测试就提取 test 数据库,为什么不这样去做呢?

Fixture,这不是 Rails 的默认做法嘛?

2 楼 已删除

#1 楼 @iBachue 那为什么不使用种子数据来测试呢

#3 楼 @hw676018683 没说不能用 只是大家不用

最直接的原因是 mongoid 不支持 fixture. active record 下用不用就看喜好了。

我不懂怎么设置一个满足所有测试需求的 Fixture 数据集,FactoryGirl 可以在每个 test case 中独立。

cucumber 用的就是类似这种方式导入数据。但 cucumber 做的是集成测试。

Factorygirls 似乎用在单元测试多一些。单元测试,是尽可能不依赖外部。所以应该有单独的数据。

FactoryGirl + FFaker

需要 登录 后方可回复, 如果你还没有账号请 注册新账号