Rails как очистить базу данных между тестами селена - PullRequest
0 голосов
/ 07 июля 2011

Rails 3 Rspec Selenium webrat

Тесты Selenium записывают в базу данных разработки.

Мне нужен способ запуска rake db: reset перед или после каждого теста.

Есть ли способ запустить rake db: reset из интеграционного теста?

1 Ответ

0 голосов
/ 07 июля 2011

Вы можете посмотреть на камень database_cleaner (см. Документацию по https://github.com/bmabey/database_cleaner).. После того, как он установлен, вы можете добавить его в файл spec_helper.rb:

Spec::Runner.configure do |config|

  config.before(:suite) do
    DatabaseCleaner.strategy = :transaction
    DatabaseCleaner.clean_with(:truncation)
  end

  config.before(:each) do
    DatabaseCleaner.start
  end

  config.after(:each) do
    DatabaseCleaner.clean
  end

end
...