2013-02-14 2 views
2

Чтобы проверить большое приложение, которое лучше всего подходит для заводской девушки, машиниста или изготовления. as Factory Girl делает реальные объекты, поэтому он попадает в базу данных и делает тестирование медленным, и я хочу быстро запускать тесты?Лучшая черно-белая фабрика Девушка, машинист и изготовление

Является ли машинист и изготовление хорошей альтернативой фабричной девушке? , а также хотят, чтобы запустить все обратные вызовы моделей, как «after_save» и т.д.

ответ

0

FactoryGirl имеет методы, которые не попали в базу данных, как:

FactoryGirl.build(:object) 
+0

, пожалуйста, дайте мне знать, могу ли я проверить обратные вызовы after_save с использованием методов FactoryGirl.build и как? –

+0

Ронак, я думаю, вы не можете сделать это на сборке. Но я уверен, что вы можете иметь связанные объекты при создании. Пожалуйста, ознакомьтесь с этим сообщением - http://robots.thoughtbot.com/post/23673635798/remove-duplication-with-factorygirls-traits – ka8725

0

Я думаю, что ответ должен быть связан с не производительность, но удобство. Я использовал как Facticator, так и FactoryGirl, и я уверен, что FactoryGirl более удобен и позволяет делать некоторые вещи, которые другие производители не предоставляют (например, черты, ассоциации автоматических зданий и т. Д.). У FactoryGirl также больше сообщества. Так что мой ответ, что FactoryGirl лучшего

0

Использование:

FactoryGirl.build(:object) 

ого использовать after_build обратный вызов. Вы также можете создавать связанные объекты. Однако они не будут иметь идентификаторы, пока вы не сохраните объект (ы).

+0

немного путайте, чтобы проверить контроллер, я должен использовать moker & stubs 'save' call или просто позволить хранить объект в базу данных, что лучше? –

0

В производстве, у вас есть Fabricate.attributes_for (: модель), которые делают вид из .build, но если у вас есть вложенные модели, и вы их изготовления вы построить основной объект, но вложенные были созданы ....

Но ... если вы не сохраните все данные, как вы действительно проверить ваше приложение ...

Если вы хотите создать непосредственно, можно сделать изготовить? (: модель)

Удача ^^

Смежные вопросы