【发布时间】:2015-09-19 15:26:17
【问题描述】:
以下有什么区别?
- DatabaseCleaner.clean_with(:truncation)
- DatabaseCleaner.clean
我想弄清楚的是,在我的测试(性能方面)中使用数据库清理器清理 before(:all) 挂钩的最佳方法是什么。我的 before(:all) 钩子只是创建了大量的工厂并在它们之间创建了一些关联。目前,我只是将它们全部加载到 before(:each) 中,而不必担心之后的清理。
我目前的策略如下:
RSpec.configure do |config|
config.use_transactional_fixtures = false
config.before(:suite) do
DatabaseCleaner.clean_with(:truncation)
end
config.before(:each) do |example|
DatabaseCleaner.strategy = example.metadata[:js] ? :truncation : :transaction
DatabaseCleaner.start
end
config.after(:each) do
DatabaseCleaner.clean
end
那么除了我之前的问题,我的 after(:all) 应该是什么样子的?
【问题讨论】:
标签: ruby-on-rails rspec capybara database-cleaner