Каков наилучший способ тестирования моделей mongoid в рельсах с помощью tdd / bdd? - PullRequest
1 голос
/ 04 января 2012

Для тестирования моделей rails / mongoid DB до сих пор у меня была реальная модель с небольшим количеством данных (3 .. 5), пытающаяся охватить каждый случай на самом деле.

Я уже тестирую снаружив BDD с огурцом, но я обычно останавливаюсь раньше, использую rspec очень мало и без фикстуры и макета, предугадываю реальные случаи и печатаю значения полей с помощью рельсового регистратора через Rails.logger.info

Но теперь мне это надоелокогда модели усложняются, это слишком ошеломляет.

Каков наилучший способ тестирования моделей mongoid в рельсах с помощью tdd / bdd?Где я могу начать?

1 Ответ

1 голос
/ 04 января 2012

Я не работал с Mongoid раньше, но есть ли причина, по которой тестирование этих моделей будет отличаться от тестирования с использованием ActiveRecord?Я лично полагаюсь на RSpec для модульного тестирования, которое должно проверять только внешний API (поведение) ваших моделей и не должно сильно зависеть от приборов или тестирования внутренних данных или частных методов.Вы также можете использовать макеты и заглушки, чтобы избежать сохранения БД во многих случаях.

Если ваши модели становятся слишком сложными, вы можете рассмотреть возможность использования более подходящего ООП и извлечения некоторой логики для других классов,не полагайтесь на Mongoid.У вас есть много вариантов в этом случае, и я настоятельно рекомендую Рефакторинг Ruby , если вы заинтересованы в получении дополнительной информации.

...