Python - 行为 - 同名的两个不同步骤
Python - Behave - Two different steps with the same name
我正在 运行 我的 python 测试 Behave
我想做的是在不同的步骤文件中实施相同的步骤,例如 "UserA calls UserB" 并将测试指向正确的步骤教学时间。
例如:
.feature 文件内容:
Scenario: User A calls User B
Given UserA calls UserB
然后,在步骤文件夹中,我将有一个 .py 文件,其中包含:
@given('UserA calls UserB')
def step_impl(context):
print('A call is being made')
还有一个步骤 .py 文件将包含:
@given('UserA calls UserB')
def step_impl(context):
print('A call is being made in another method')
我想控制执行这些步骤中的哪一个。
有干净的方法吗?
在 behave Github 存储库中询问后找到答案:
区分步骤的最佳方法是使用测试阶段。
示例:
如果我想使用相同的 .feature 文件编写不同实现的相同步骤,我可以打开两个目录:
dev_steps/
integration_steps/
并使用 stage:
在 behave 命令中指向它们中的每一个
behave --stage=dev
或
behave --stage=integration
我正在 运行 我的 python 测试 Behave
我想做的是在不同的步骤文件中实施相同的步骤,例如 "UserA calls UserB" 并将测试指向正确的步骤教学时间。
例如:
.feature 文件内容:
Scenario: User A calls User B
Given UserA calls UserB
然后,在步骤文件夹中,我将有一个 .py 文件,其中包含:
@given('UserA calls UserB')
def step_impl(context):
print('A call is being made')
还有一个步骤 .py 文件将包含:
@given('UserA calls UserB')
def step_impl(context):
print('A call is being made in another method')
我想控制执行这些步骤中的哪一个。 有干净的方法吗?
在 behave Github 存储库中询问后找到答案:
区分步骤的最佳方法是使用测试阶段。
示例:
如果我想使用相同的 .feature 文件编写不同实现的相同步骤,我可以打开两个目录:
dev_steps/
integration_steps/
并使用 stage:
在 behave 命令中指向它们中的每一个behave --stage=dev
或
behave --stage=integration