Таким образом, я нахожусь в своей тестовой среде
теперь, в terminial, db:test:prepare граблей очищает дб..., но не, когда я выполняю его из кода
И у меня есть это в features/support/env.rb:
Before do
task :build_all do
[ :debug, :release ].each do |t|
$build_type = t
Rake::Task["db:test:prepare"].reenable
Rake::Task["db:test:prepare"].invoke
end
end
end
Но мои данные остаются в project_test дб, когда мои тесты сделаны, работая
Это находится в моем database.yml
test:
adapter: mysql
encoding: utf8
database: projectname_test
username: root
password:
Я также попробовал
db:test:purge
и
db:test:reset
и я знаю, что это использует мой тестовый дб, потому что я проверяю mySQLWorkbench, и это вставляет данные в таблицы..., но не удаляет данные, когда его сделанный (я должен удалить его вручную). Когда таблицы пусты, передача тестовых сценариев
Сценарии в Cucumber, как и тесты в RSpec, выполняются в блоках транзакций и откатываются после завершения сценария. Любые данные в базе данных, которых не должно быть, вероятно, остались от чего-то еще. Попробуйте очистить свою базу данных.
Я знаю об этом, но пробовали ли вы удалить и воссоздать базу данных на лету?