Сколько нужно времени, чтобы запустить сценарий огурца? - PullRequest
2 голосов
/ 31 декабря 2010

Я запускаю приложение Rails 3 на Windows, которое включает в себя следующий сценарий Cucumber -

Scenario: Creating a project
Given I am on the homepage
When I follow "New Project"
And I fill in "Name" with "TextMate 2"
And I press "Create Project"
Then I should see "Project has been created."

(сценарий взят из книги Мэннинга "Rails 3 In Action").Когда я запускаю команду «bundle exec cucumber», мне приходится ждать примерно сорок секунд, пока я не получу результат (в настоящее время в моем проекте только один сценарий - поэтому для запуска одного сценария требуется 40 секунд).Я надеялся получить отзывы намного быстрее с помощью тестов на огурец.Медленная обратная связь с Cucumber - это просто факт жизни или есть способ ускорить процесс?

Ответы [ 2 ]

3 голосов
/ 31 декабря 2010

Привет, я один из авторов этой книги, поэтому я думаю, что смогу хотя бы немного разобраться в этом вопросе.

Я пишу книгу, используя Mac OS X, и когда я запускаю этот сценарий с помощью команды time UNIX:

time bundle exec cucumber features/creating_projects.feature

Я получаю этот вывод:

0m1.196s

real    0m10.741s
user    0m9.195s
 sys    0m1.519s

Первый раз выводится из огурца и указывает на то, что сценарию потребовалось 1,196 секунды, чтобы пройти с головы до пят. Время real здесь указывает, сколько времени занял весь процесс, что означает все, включая загрузку Rails и всех связанных с ним гемов. Около 10 с половиной секунд.

Так что это означает, что сценарий должен работать так же быстро для вас. Это не так, и я не уверен, почему нет, и я не могу проверить это, потому что у меня нет окна Windows для тестирования.

Ответ может заключаться в том, как вы установили Ruby, хотя сейчас я не уверен на 100%.

2 голосов
/ 10 января 2011

У меня очень похожий проект с одним сценарием огурца, и его запуск на моей машине с Windows занимает 39 секунд.

Проблема в том, что ruby ​​не оптимизирован для работы в Windows. Некоторая информация здесь http://en.wikibooks.org/wiki/Ruby_Programming/Installing_Ruby#Windows_is_slow.

Мое решение этой проблемы - установить Ubuntu на VirtualBox и выполнить всю разработку Rails внутри него. Это хороший компромисс, хотя мне все еще неудобно работать над Ubuntu. Тот же сценарий с огурцом для запуска в виртуальной Ubuntu занимает 10 секунд, что более или менее приемлемо.

В «настоящей» установке Ubuntu это занимает 7 секунд.

...