我真的不明白爲什麼DatabaseCleaner不清洗我的測試數據庫。這是我所得到的提示RSpec的+數據庫清理,清洗不正確
1.9.2p290 :007 > DatabaseCleaner.clean
-
=> [#<DatabaseCleaner::Base:0x007fa7e4dd8b58 @autodetected=true, @orm=:active_record, @strategy=#<DatabaseCleaner::ActiveRecord::Transaction:0x007fa7e4dc14f8 @db=:default>>]
這似乎不能正確設置數據庫(應該是:測試),所以我得到了一個解決方案一樣
DatabaseCleaner[:active_record, :connection => :test].clean
# => nil
寶石似乎設置正確:
1.9.2p290 :007 > DatabaseCleaner[:active_record, :connection => :test]
#<DatabaseCleaner::Base:0x007fe8fcfd4868 @orm=:active_record, @strategy=#<DatabaseCleaner::ActiveRecord::Transaction:0x007fe8fcfd2748 @db=:test, @connection_hash={"adapter"=>"sqlite3", "database"=>"db/test.sqlite3", "pool"=>5, "timeout"=>5000}>, @db=:test>
這看起來似乎正確設置了測試數據庫,但它仍然不能正確清理數據庫。有什麼建議麼?
非常感謝。
是您在正確的環境控制檯? (例如rails控制檯測試)我期望DatabaseCleaner清理它所調用的環境。當然是 – 2012-03-29 14:51:16
。用_rails c test_打開。 – 2012-03-29 15:06:32
促使'DatabaseCleaner [:active_record,:連接=>:測試] .clean',返回零。 – 2012-03-29 15:07:11