我在这里寻找建议或最佳实践。为`Given`和`Then`定义相同的短语步骤
有时候我想给相同的正则表达式/短语使用不同的介词2个不同的步骤。我经常看到的情况是在Given
和Then
步骤中都有意义的短语。
Given
被用于执行和操作(设置测试状态)的步骤。 和Then
用于验证状态的步骤,但不执行操作。很多时候,我发现相同的措词适用于两者。一个例子这样的一句话就是:“我登录”
这里是一个人为的情景
Scenario: Login is saved between sessions.
Given I am logged in
When I exit the application
And I start the application
Then I am logged in
当然,这不,在步骤定义工作,因为黄瓜没有一步谓词区分。
我已经玩过了添加'验证'到所有碰撞Then
步骤,或添加一个'that'到所有重复的Given
步骤。但没有什么是正确的。
Given that I am logged in.
...
Then verify I am logged in.
它的工作原理,当然,但我觉得我失去了一些东西,不需要具有相同的“扩展谓词”大多数我的步骤。
你可以使用'然后我应该登录' – 2013-02-28 08:09:18
是的,那就是我在做什么。只是选择一个稍微不同的同一句话。我想在你的测试中标准化是唯一的方法。我真的希望你可以用同样的名字来定义When和Then的步骤。 – DragonFax 2013-03-01 04:23:02
[两个步骤的定义是相同的,但一个是给定的,一个是的]的可能重复(https://stackoverflow.com/questions/47107183/two-step-definitions-that-are-the-same-但是酮是换给定和酮是换然后) – Marit 2017-12-30 10:57:52