Capybara / Cucumber的睡眠功能?

时间:2012-10-15 17:44:21

标签: ruby-on-rails ruby cucumber capybara

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

2 个答案:

答案 0 :(得分:22)

我在步骤定义中有这个:

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

答案 1 :(得分:1)

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

Given /^I wait for (\d+) (second|minute|hour)s?$/ do |n, unit|
  sleep(eval("#{n.to_i}.#{unit}"))
end