Огурец и Rspec поделились с девушками фабриками - PullRequest
6 голосов
/ 16 сентября 2011

Я разрабатываю тест на рельсах, используя Cucumber и Rspec, и мне было интересно, будет ли хорошей практикой разделять заводской код Factory Girl между приемочным тестом Cucumber и модульными тестами Rspec.

И если это хорошая практика, где было бы наилучшее нейтральное место для размещения фабрик rspec и огурцов.

Большое спасибо

Ответы [ 2 ]

5 голосов
/ 16 сентября 2011

Вы можете использовать фабрики где угодно. Я обычно использую их в rspec и моих историях о огурцах.

Заводы являются заменой крепежа. Общая идея заключается в том, чтобы уметь исправлять читаемые тесты и уходить от сценария ада "приспособлений"

Я думаю, это нормально, если вы размещаете на спец / фабриках, там нет стандартного местоположения. Но я обычно помещаю это в мою папку спецификации. Для этого не нужно использовать отдельное нейтральное место.

1 голос
/ 30 августа 2012

Да, хорошей практикой является не повторять одни и те же фабричные определения (если они являются общими ... которые я бы там содержал, ДОЛЖНО быть частичным совпадением).Один из способов сделать это - создать в вашем проекте новый каталог с именем factory, а затем добавить следующее в ваши конфигурации rspec и cucumber:

/features/support/app.rb
    Dir[Rails.root.join("factories/**/*.rb")].each {|f| require f}

/spec/spec_help.rb
    Dir[Rails.root.join("factories/**/*.rb")].each {|f| require f}
...