DatabaseCleaner - это библиотека для «очистки» вашей базы данных. Cucumber будет использовать его между запущенными функциями, чтобы убедиться, что ваша БД находится в тестируемом состоянии (т.е. пусто).
Идея состоит в том, что вы строите правильные данные в своих Given
предложениях для каждого теста
Эта ошибка просто означает, что DatabaseCleaner не требуется должным образом.
Различные версии Rails / Cucumber имеют разные способы настройки всего и предоставляют разные функциональные возможности в этом отношении, поэтому трудно действительно дать вам правильное решение, не зная ваших настроек.
Несколько советов:
Посмотрите на огуречный рельс драгоценный камень. Он дает вам много хороших вещей, таких как генераторы, а также рейк-задачи, так что вы можете запустить rake cucumber
вместо непосредственного использования огурца. Часто генераторы создают файл конфигурации, который требует для вас database_cleaner
.
В противном случае, добавьте database_cleaner
в свой список зависимостей и поместите require 'database_cleaner'
где-нибудь в коде вашего набора тестов.