我正在使用seed.rb来填充一些状态模型参考数据:
State.create :name => 'Alabama',:abbreviation => 'AL' State.create :name => 'Alaska',:abbreviation => 'AK' # ...
虽然我没有使用状态灯具(因为它是种子数据开始,我认为不必重复纯粹为了测试),Rails测试框架似乎在测试期间删除所有状态种子数据. (我正在删除,重新创建,迁移和重新使用测试数据库,并确认数据在单元测试运行之前.)
结果是这种断言在seed.rb中成功,但是在一行测试中失败:
assert_equal 51,State.all.size 1) Failure: test_state_seeds_are_present(StateTest) [/test/unit/state_test.rb:24]: <51> expected but was <0>. 1 tests,1 assertions,1 failures,0 errors
我已经尝试在基本测试类fixtures语句中显式列出非状态模型,以及翻转事务夹具标志(如预期的,这仅影响在测试期间创建的记录).当然,正在考虑的测试本身并不是删除这些记录.
国家记录总是被删除.有没有办法告诉Rails只是把握手中的种子数据?我需要复制灯具中的所有数据以确保重新加载吗?没有一个重大的政治事件,我预计国家数据将会相对稳定.
TIA