データベースクリーナーのみを使用するこのクールな方法を見ました:js=>trueを使用したカピバラテストの切り捨て
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で行われる機能テストでは、クリーニング戦略を:truncationにする必要があるように思われることです。
ただし、他のすべての仕様は、大幅に高速な:transactionで問題ありません。
カピバラ機能テストのみの戦略を指定する方法はありますか?何かのようなもの:
DataCleaner.strategy( :truncation ) if :type => :feature