对于我们的一些JBehave故事,前提条件并不那么明显,我们最终只在不使用@Given的情况下在很多场景中使用@When和@Then。这被认为是一种好的做法,或者你必须在每个场景中都有@Given吗?
答案 0 :(得分:0)
我在过去四年中使用的是SpecFlow
,但从未遇到任何我可以忽略的情况@Given
步骤:)。
您可以忽略@Given
步骤,但这不是一个好习惯。根据我的知识,在测试任何场景之前,我们至少应该做一些先决条件,比如打开应用程序或登录应用程序。您可以使用@Given
步骤执行这些步骤。
场景应始终意味着特定的用户角色,例如敏捷中的用户故事。因为每个应用程序都包含一些特定的用户角色。
EX:Given As a sales manager I will login into some application
在我的情况下,我使用Background
步骤打开应用程序(所有方案都很常见)。
请参阅下面的示例场景:
Feature: BrentScenarios
Background:
Given I have Echo application
Scenario Outline: BRT - Create event for Special Collections
Given I have logged in using "<username>" and "<password>"
And I navigated to create event window
在极少数情况下,您可以使用@Given
步骤打开您的应用程序。