6

データベースクリーナーのみを使用するこのクールな方法を見ました: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
4

1 に答える 1

3

これでうまくいくはずです、教えてください

config.after(:all, :type => :feature) do
  DatabaseCleaner.clean_with :truncation
end
于 2013-02-14T18:26:10.413 に答える