运行Cucumber场景需要多长时间?

时间:2010-12-30 22:15:52

标签: ruby-on-rails cucumber

我在Windows机器上运行Rails 3应用程序,其中包括以下黄瓜方案 -

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."

(该场景取自Manning“Rails 3 In Action”一书)。当我运行'bundle exec cucumber'命令时,我必须等待大约四十秒才能收到结果(我的项目中目前只有一个场景 - 所以运行一个场景需要40秒)。我希望通过Cucumber测试更快地获得反馈。来自Cucumber的慢反馈只是生活中的一个事实,还是有办法加快速度?

2 个答案:

答案 0 :(得分:3)

嘿那里,我是这本书的作者之一,所以我想我至少可以对这个问题提供一些见解。

我正在使用Mac OS X编写本书,当我使用time UNIX命令运行此方案时:

time bundle exec cucumber features/creating_projects.feature

我得到了这个输出:

0m1.196s

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

第一次输出来自Cucumber,表示从上到下运行的场景需要1.196秒。这里的real时间表示整个过程花了多长时间,这意味着包括加载Rails和所有相关宝石在内的所有内容。大约10秒半左右。

所以这意味着场景应该以同样快的速度运行。它不是,我不知道为什么不,我无法测试它因为我没有Windows盒子可以测试。

答案可能在于你如何安装Ruby,尽管我现在还不是100%肯定。

答案 1 :(得分:2)

我有一个非常类似的项目,有一个黄瓜方案,在我的Windows机器上运行它需要39秒。

问题是ruby没有针对在Windows上运行进行优化。有些信息在http://en.wikibooks.org/wiki/Ruby_Programming/Installing_Ruby#Windows_is_slow

我解决这个问题的方法是在VirtualBox上安装Ubuntu并在其中进行所有Rails开发。这是一个很好的妥协,而我仍然不习惯在Ubuntu上工作。相同的黄瓜场景需要10秒才能在虚拟Ubuntu上运行,这或多或少是可以接受的。

在“真正的”Ubuntu安装上需要7秒钟。