13

我在我的网站上有一个页面,我正在尝试测试它要求用户在继续之前在页面上花费至少五秒钟。Capybara 有没有办法让我的 Cucumber 测试在该页面上暂停并等待五秒钟,然后再继续我描述的下一步?

4

2 回答 2

30

我的步骤定义中有这个:

Given /^I wait for (\d+) seconds?$/ do |n|
  sleep(n.to_i)
end

在您的功能中:

Given I am on the whatever page
And I wait for 5 seconds
And I follow "A Link"
# etc...
于 2012-10-15T17:47:04.613 回答
1

像这样动态定义时间单位也很棒:

Given /^I wait for (\d+) (second|minute|hour)s?$/ do |n, unit|
  sleep(eval("#{n.to_i}.#{unit}"))
end
于 2014-01-08T07:17:20.843 回答