我从一个包含架构但表中没有数据的测试数据库开始。我像这样运行测试
cd test/
ruby unit/directive_test.rb
我收到失败,表明代码在数据表中找不到数据。但是,我在运行该测试后查看表格,数据现在在表格中。事实上,如果我立即再次运行测试,我不会失败。
所以看起来夹具被加载到表中为时已晚,我的一个模块无法找到它。
- 夹具何时加载?
app/model/*.rb
在文件执行之后还是之前? - 如果是在模型执行之后有没有办法延迟加载?
这个问题在运行时也很重要,rake test:units
因为该任务在完成后会清除测试数据。