我熟悉可以为步骤定义数据的行为,如下所示:
Feature: My feature
Scenario: My scenario
Given some data
| order_nr | customer_name | delivery_date |
| 1 | John Doe | 2023-10-01 |
| 2 | Jane Smith | 2023-10-02 |
该表可作为传递到每个步骤函数的
变量中的“.table”属性供 Python 步骤代码使用。可以像这样访问上面示例的表:Context
@given('a set of specific users')
def step_impl(context):
for row in context.table:
model.add_user(name=row['name'], department=row['department'])
我喜欢让读取功能文件的人看到数据,但我使用的是 pytest-bdd。我想使用 pytest-bdd 实现相同的目标。
然而pytest-bdd 没有相当于
Context
变量,因此我不知道如何实现这一点。使用 pytest-bdd 时,有没有办法将数据从功能文件传递到步骤定义?
看起来 18 天前添加了对数据表的支持 https://github.com/pytest-dev/pytest-bdd/pull/712
只需等待 pytest-bdd 8.x 发布即可。希望不会太久。