Specflow 是什么时候给出的?
Specflow Given When Then BUT?
我已经使用 SpecFlow 一段时间了,但没有使用 "but" 逻辑。
考虑以下情况:
Scenario: Kiran logs into the system but doesn't click remember me
Given I have a username of 'Kiran'
And a password of 'password'
When I chose login
But I don't chose remember me
Then I should be logged in
And Taken to the home screen
But My username should not be remembered
不能将 "but" 步骤与 "and" 互换吗?
使用"but"有什么好处吗?
我认为这纯粹是为了提高可读性,对吗?
我期待听到您对此的看法。
非常感谢,
基兰
是的,你是对的,"and" 和 "but" 在 gherkin 语法中是可以互换的。
但是根据我的经验,当您指示用户 应该 执行某项操作时使用 "and",而 "but" 最适合用于以下情况您想强调用户 不应该 执行某项操作;这是因为英语中的 "but" 通常用于否定语境。
因此在您的示例中:
But I don't chose remember me
很好地利用了 "but",因为它们没有执行任何操作。此外,使用 "but" 可以明确测试的意图并消除任何可能的歧义。
我已经使用 SpecFlow 一段时间了,但没有使用 "but" 逻辑。
考虑以下情况:
Scenario: Kiran logs into the system but doesn't click remember me
Given I have a username of 'Kiran'
And a password of 'password'
When I chose login
But I don't chose remember me
Then I should be logged in
And Taken to the home screen
But My username should not be remembered
不能将 "but" 步骤与 "and" 互换吗?
使用"but"有什么好处吗?
我认为这纯粹是为了提高可读性,对吗?
我期待听到您对此的看法。
非常感谢, 基兰
是的,你是对的,"and" 和 "but" 在 gherkin 语法中是可以互换的。
但是根据我的经验,当您指示用户 应该 执行某项操作时使用 "and",而 "but" 最适合用于以下情况您想强调用户 不应该 执行某项操作;这是因为英语中的 "but" 通常用于否定语境。
因此在您的示例中:
But I don't chose remember me
很好地利用了 "but",因为它们没有执行任何操作。此外,使用 "but" 可以明确测试的意图并消除任何可能的歧义。