Ускорить медленное модульное тестирование для приложения rails в Windows? - PullRequest
1 голос
/ 13 сентября 2011

Я ищу самый быстрый способ запуска модульных тестов для приложения rails на компьютере с Windows, желательно автоматически. Моя среда:

  • Рубин 1.8.7
  • Рельсы 3.0.9
  • ZenTest 3.6.0 (последние версии 4.6.2 / 4.5.0 потерпели неудачу, когда я попробовал их по некоторым причинам)

В настоящее время они работают очень медленно, например. 30-х, чтобы запустить набор из 12 очень простых модульных тестов, кажется, что больше времени уходит на запуск ruby. Сами тесты выполняются в течение 5 секунд в соответствии с автотестом. Для тех, кто привык выполнять сотни тестов за 10 секунд, это мучительно и делает TDD невозможным. Я даже был бы счастлив, если бы я мог повторно запустить один модульный тест менее чем за 5 секунд ...

Я искал другие вопросы. Некоторые старые и некоторые конфликтные. Какова последняя принятая мудрость в этом? Вот предложения, которые мне известны:

  • Использовать fast_require и / или rapid_gem_script (хотя у меня были проблемы с этим ...)
  • Попробуйте JRuby (хотя это кажется медленным запуском?)
  • Обновить рубин до 1.9.x
  • Spork
  • дремать?
  • Рельсы-DEV-наддув?

О покупке Linux-бокса (или VMware) в настоящее время не может быть и речи, хотя и получается более заманчиво ...

Ответы [ 2 ]

1 голос
/ 13 сентября 2011

Возможно, вы захотите взглянуть на что-то вроде spork ( и запись в блоге ).

0 голосов
/ 13 сентября 2011

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

Если вы также можете перейти на ruby ​​1.9.2, это было бы весьма полезно.

...