Behave 简明教程

Behave - Step Parameters

我们可以在 Behave 里将参数传递给步骤。让我们检视一个功能文件,其中包含具有多个参数且设置了不同值的步骤。这有助于简化自动化实现,因为减少了总的步骤定义。

Feature File

请考虑如下功能文件示例:

Feature − Schedule
   Scenario − Verify Day and Night Schedule
   Given I reach office at "day" shift
   And I reach office at "night" shift

该功能文件包含几乎与 Given 和 And 步骤相同的步骤。唯一的区别在于白天和晚上的轮班时间。我们可以将参数传递给步骤定义文件中的步骤,而不必重复实现几乎相同的步骤。

请注意:我们将 day 和 night 参数放在双引号文本中(也可以使用单引号文本)放入功能文件中。在步骤实现中,我们将以 {} 括住传递参数。

此外,该参数作为带有实现方法的自变量之一传递。

Corresponding Step Implementation File

相应的步骤实现文件如下:

from behave import *
@given('I reach office at "{time}" shift')
def step_implpy(context, time):
      print("Shift is: {}".format(time))

Output

运行功能文件后获得的输出如下,使用的命令是 behave --no-capture -f plain

step parameters

输出显示 Shift is: dayShift is: night 已打印。在此处,参数 day 和 night 从步骤传递。