Как заполнить таблицы поиска в тестировании (Rails) - PullRequest
5 голосов
/ 22 января 2011

Я использую Cucumber, Rspec и Factory Girl для тестирования моего приложения на Rails. Но у меня есть несколько таблиц поиска, которые содержат в основном статические данные. Поэтому я пытаюсь найти наилучший способ заполнить их при тестировании. Делать их индивидуально в FactoryGirl кажется утомительным, и я бы хотел держаться подальше от Светильников Для разработки и производства я заполняю их в своем файле seed.rb.

Спасибо!

Ответы [ 2 ]

7 голосов
/ 22 января 2011

Используйте Factory Girl .sequence, Populator и Faker и у вас никогда не кончатся лабораторные крысы!

Factory.define(:model) do |m|
  m.sequence(:title)  { |n| "model-#{n}" }
  m.author            Faker::Name.name
  m.short             Populator.words(5)
  m.long              Populator.paragraphs(1..3)
end

Тогда, может быть, в before :each блоке

@models = []
15.times { @models << Factory.create(:model) }

Или вы можете использовать только Populator для заполнения базы данных перед тестированием.

0 голосов
/ 22 января 2011

Может быть, что-то вроде

rake RAILS_ENV=test db:seed

в файле вспомогательного теста?

...