我看到这个很酷的方法只使用数据库清理程序:使用以下方法截断capybara测试:js =>真
在spec_helper.rb中:
config.before(:each) do
DatabaseCleaner.strategy = if example.metadata[:js]
:truncation
else
:transaction
end
DatabaseCleaner.start
end
config.after(:each) do
DatabaseCleaner.clean
end
问题是,使用水豚进行的任何功能测试似乎都需要清除策略:截断。
然而,所有其他规格都适用于:交易,这要快得多。
有没有一种方法可以仅为capybara功能测试指定策略?类似的东西:
DataCleaner.strategy( :truncation ) if :type => :feature
答案 0 :(得分:2)
这应该这样做,让我知道
config.after(:all, :type => :feature) do
DatabaseCleaner.clean_with :truncation
end