В Rails, как ускорить тесты машинистов? - PullRequest
0 голосов
/ 16 марта 2010

Я заменяю контрольные приборы на Машинист.Но использование Machinist для настройки тестовых данных очень медленное, потому что всякий раз, когда запускается тестовый метод, Machinist создает новые данные и сохраняет их в базе данных.Есть ли способ кэшировать данные в памяти, чтобы использование Machinist не было таким медленным?

Спасибо, Брайан

1 Ответ

1 голос
/ 20 апреля 2010

1) Попробуйте SomeModel.make_unsaved, если вам не нужно его сохранять.

2) Ищите способы создания более легких версий объектов. Может быть, вы можете избежать создания связанных объектов. Например: BlogComment.make (: gravatar => nil) # избегать создания граватарного изображения Или, если вам обычно требуется более легкая версия, вы можете перевернуть ее и сделать так, чтобы обычный BlogComment.make создал легкий объект (без гравитации), тогда как BlogComment.make (: with_gravatar) сделает дополнительную работу.

3) Избегайте внешних обращений к веб-службам (карты Google, S3 и т. Д.), Если вы специально не проводите интеграционный тест для этой службы. Используйте заглушки для предотвращения фактического подключения этих методов к объекту, который вы тестируете, к внешней службе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...