У меня проблема с очистителем базы данных в проекте rails. Я использую базу данных sqlite3 в своей тестовой среде, и в ней есть несколько таблиц, содержащих справочные данные, заполненные задачей db: test: prepare, которые не нужно стирать между тестами.
У меня есть несколько сценариев с огурцами, помеченных @javascript с использованием драйвера веб-драйвера, а некоторые без этого тега.
В моем файле env.rb я настроил очиститель базы данных для использования стратегии усечения с параметром кроме:
DatabaseCleaner.strategy = :truncation, {:except => %w[ignore me]}
DatabaseCleaner.clean
вызывается после каждого сценария и работает, как ожидается, в сценариях с тегами javascript.
Однако для сценариев без javascript он усекает всю базу данных, включая таблицы, перечисленные в массиве: кроме. Я также пытался позвонить DatabaseCleaner.clean_with
, который тоже не работал.