Мне пришла в голову идея сбросить базу данных. Он не позволяет вам продолжать работу с той же страницы, но если у вас есть приложение, работающее во время теста, вы можете сразу же реагировать на текущее состояние вещей в другом браузере (не в том, что контролируется Selenium).
Вот шаг:
When /I want to take control/i do
exec "mysqldump -u root --password=* test > #{Rails.root}/support/snapshot.sql"
end
Поскольку он вызывается exec
, DatabaseCleaner не имеет возможности усекать таблицы, поэтому на самом деле не имеет значения, является ли команда дампом базы данных. Вам не нужно импортировать sql, чтобы использовать приложение в его текущем состоянии, но оно есть, если оно вам нужно.