キュウバーを使用して統合テストを作成し、Database Cleanerを使用してdbをきれいに保ちます。私のテストはJavascriptを必要としないので、すべてが完璧に機能します。カピバラウェブキットのデータベースクリーナーの問題
Capybara webkitを使用してこれらの最後のテストを合格させることはできますが、dbはまったくクリーニングされません。ここで
私機能/サポート/ env.rbファイルです:私はカピバラによって使用されますが、それはうまくいきませんでしたいるドライバを確認するthisに似た何かをしようとした
require 'simplecov'
SimpleCov.start 'rails'
require 'cucumber/rails'
Capybara.default_selector = :css
Capybara.javascript_driver = :webkit
begin
require 'database_cleaner'
require 'database_cleaner/cucumber'
DatabaseCleaner[:active_record].strategy = :transaction
rescue NameError
raise "You need to add database_cleaner to your Gemfile (in the :test group) if you wish to use it."
end
Before do
DatabaseCleaner.start
end
After do |scenario|
DatabaseCleaner.clean
end
。私もthis postの3番目の部分に記載されているハックを試しましたが、何も何も働かなかった...
私は本当にこれを達成する方法を知っていないと大いに感謝します。
ありがとうございます。
それは、取引戦略がキュウリで動作しないと言うことは正しくないです。それはあなたが使っているカピバラのドライバーによって異なります。ラックテストでは、すべてがインプロセスであるため、トランザクション戦略が機能するはずです。 –
あなたは正しいです。 @ javascriptが常に有効になっているので、私は古い良品のラックテストを完全に忘れていました。 – svyatogor