[英]How to reload rails fixtures into database during test running
我的遗留代码使用的是DatabaseCleaner,它在完成每个测试后会擦除数据库。 但是,它也会清除已加载的灯具数据,并导致使用灯具的某些测试失败,例如:
ActiveRecord::RecordNotFound Exception: Couldn't find Country with 'id'=593363170
为了使它们一起工作,如何在测试过程中将所有灯具重新写回数据库? (我的意思是不耙任务)
解:
在要重新加载固定装置的文件开头,设置self.use_transactional_fixtures = false
。
或者在Rails 5中使用use_transactional_tests
。
不要在spec_helper
设置它,因为它在全球范围内适用,因此与DatabaseCleaner冲突。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.