黄瓜方案的正确格式

时间:2015-12-03 22:36:42

标签: format cucumber bdd gherkin

我在黄瓜书中读到,黄瓜特征场景的格式应该是小黄瓜场景的格式,即: 鉴于-当-然后

为简化起见,请忽略可能出现在场景中的And元素。

我经常在我当前的项目中看到几个这样定义的场景: 情景X. 鉴于-THEN-当-然后

这种格式是否正确?黄瓜接受它,但这是一个好习惯吗?

2 个答案:

答案 0 :(得分:2)

我主要同意@orde,但我觉得有必要将这些条款用于特定目的。对我来说,给予测试始终是一个步骤。这是一个人开始的情况。我建议使用不运行测试软件的步骤定义。

Given I am a registered user
And I am logged in
And I have a product in my shopping cart

何时触发测试。它可能不止一步,但这令人困惑。

When I delete the item from my cart

然后用于验证预期结果。我用它来检查什么是什么时候的结果。

Then there are not items in my shopping cart

我将不同的术语视为帮助读者了解哪个步骤用于哪个目的而无需阅读步骤定义中的代码的方法。

答案 1 :(得分:1)

GivenWhenThen关键字实际上是同一方法的别名,因此它们可以互换使用。 Gherkin只是提供更多人类可读的钩子来编写场景。

就场景中的Given/Then/When/Then序列而言,它会起作用,但看起来确实有点不寻常。我意识到您正在尝试简化问题,但这听起来像是使用AndBut的可能情况。例如:Given/And/When/ThenGiven/But/When/Then。如果你想避免*

的语义体操,你可以使用Given/When/Then/And/But开始一步