rails 做测试时能不能让它不删除原有数据?

情况比较特殊,我想把development里边的数据直接导到test数据库里进时测试,关键是rail在进行测试之前会清除掉test里的所有数据,再从fixture里导入新的数据。
请问一下有没有什么配置能让测试之前不删除原有数据? 有一个方法是先把dev的数据做成fixture, 然后跑测试时再由fixture导入test数据库,数据量一大就没戏了

night老大很对,理论上是Rails并不支持测试的时候,不加载fixture

除非,你进到源代码里,修改Rails的测试运行机制,

如果,你想考虑的话,你可以参考下

[url]http://www.iteye.com/topic/352443[/url]

是我看ruby UnitTest一点理解,或许有帮助。

不行的。

你可以考虑in memory db,速度快很多。

修改database.yml的test段
[code="yml"]
test:
adapter: sqlite3
database: ":memory:"
[/code]

在environment.rb最后,添上
[code="ruby"]
if 'test'==ENV['RAILS_ENV']
load "#{RAILS_ROOT}/db/schema.rb"
end
[/code]