📜  Cucumber-场景

📅  最后修改于: 2020-12-07 04:48:49             🧑  作者: Mango


场景是小黄瓜的核心结构之一。每个方案都以关键字“ Scenario:”(或本地化的方案)开头,后跟一个可选的方案标题。每个功能部件可以具有一个或多个方案,并且每个方案都包含一个或多个步骤。场景的一个非常简单的例子可以是-

场景-验证帮助功能。

给定用户导航到Facebook。

当用户单击“帮助”时,将打开“帮助”页面。

考虑一种情况,我们需要多次执行测试方案。假设,我们需要确保登录功能适用于所有类型的订阅持有者。这要求多次执行登录功能方案。复制粘贴相同的步骤只是为了重新执行代码,这似乎不是一个聪明的主意。为此,Gherkin提供了另一种结构,即方案大纲。

方案大纲与方案结构相似。唯一的区别是提供了多个输入。在下面的示例中可以看到,测试用例保持不变且不可重复。在底部,我们为变量“ Username”和“ Password”提供了多个输入值。在运行实际测试时,Cucumber将用提供的输入值替换变量,然后它将执行测试。一旦执行了pass-1,测试将使用另一个输入值重新运行以进行第二次迭代。此类变量或占位符在用小黄瓜语句提及时可以用“ <>”表示。

方案大纲-社交网站的登录功能。给定的用户导航到Facebook。

当用户使用“ <用户名>”和“ <密码>”作为密码登录时,登录应该成功。

| username | password  | 
| user1    | password1 | 
| user2    | password2 |

有一些提示和技巧可以巧妙地定义黄瓜方案。

  • 每个步骤都应明确定义,以免给读者造成任何混乱。

  • 如果需要,请不要重复测试方案,请使用方案大纲来实施重复。

  • 以一种可以在多个方案和方案大纲中使用的方式来开发测试步骤。

  • 尽可能使每个步骤完全独立。例如:“鉴于用户已登录”。这可以分为两个步骤

    • 给定用户输入的用户名。
    • 点击登录。