今天,我使用factory_girl
而不是rails fixtures,但是我遇到了一个问题:
运行命令“spec spec”后,数据重置为灯具,谁可以告诉我答案?
答案 0 :(得分:0)
如果您打算在项目中同时使用工厂和灯具,而不是通过rake任务运行它们:例如rake spec
,您需要确保手动删除数据库中的值。你可能正在做的只是抓住数据库中的旧记录,你认为数据正在被重置。您可以通过在规范中使用puts来跟踪db中的记录数来验证这一点。
puts MyRecord.count
您可以清除块之前或之后的值。
before(:each) do
Factory(:my_model)
end
after(:each) do
MyModel.delete_all
end
如果您打算在其他规范文件中使用此模型或工厂,可以将它们添加到规范帮助程序中的全局前后块。