Как получить огурец и databasecleaner, чтобы оставить мои данные семени в моем rails test db?
У меня есть несколько таблиц базы данных, которые имеют данные только для отображения, они никогда не меняются. Загрузка всех данных семян занимает много времени. Я использую огурец, который, по-видимому, использует драгоценный камень database_cleaner перед каждым сценарием для обрезания всех таблиц в тестовом db. Есть ли способ сообщить database_cleaner или огурцу оставить несколько таблиц в одиночку или я застрял в загрузке моих данных семян перед каждым сценарием?
Я бегаю
рельсы 2.3.8
огурец 0.10.0
огуречные рельсы 0.3.2
database_cleaner 0.50.0
Буду признателен за любую оказанную помощь.
Том
Ответы
Ответ 1
Если вы используете ActiveRecord
или DataMapper
, вы можете использовать стратегию :transaction
вместо :truncation
.
DatabaseCleaner.strategy = :transaction
Или, как указывает @traday, вы можете использовать список исключений с усечением.
DatabaseCleaner.strategy = :truncation, {:except => %w[widgets]}
Документы DatabaseCleaner заслуживают внимания. Посмотрите features/support/env.rb
, где это обычно устанавливается с помощью огурца.