GIVEN和THEN中的定义相同......编写单个方法的方法是什么?

时间:2013-03-07 15:23:48

标签: ruby cucumber bdd

我有这段代码:

Given /^I wait for (\d+) seconds$/ do |seconds|
    $webClient.wait(seconds)
end
Then /^I wait for (\d+) seconds$/ do |seconds|
    $webClient.wait(seconds)
end

我可以用一种覆盖THEN和GIVEN的方法来定义它吗?

由于

1 个答案:

答案 0 :(得分:5)

您无需两次定义相同的步骤。 Given / When / Then主要是语法糖。

Given /^I wait for (\d+) seconds$/ do |seconds|
  $webClient.wait(seconds)
end

通过上述步骤,您的功能中的以下任何内容都将按预期工作:

Given I wait for 15 seconds
When I wait for 12 seconds
And I wait for 8 seconds
Then I wait for 999 seconds