方案1的输出作为输入传递给黄瓜python中的方案2

时间:2018-06-25 11:03:44

标签: cucumber python-behave

我想将数据从方案1传递到方案2,是否存在任何内置方法?

场景1:我正在为用户生成详细信息

场景2:我想从场景1中获取生成的用户名,并在以后的步骤中使用

2 个答案:

答案 0 :(得分:0)

您可以使用Behave的context对象在测试步骤之间存储数据。例如,假设您有两种情况:

Scenario: First one
    # Some Given's and stuff
    Then I am generating user with details

Scenario: Second one
    # Some Given's and stuff
    Then I fetch and use generated user details

steps/目录中的步骤实现文件中:

@then("I am generating user with details")
def step_impl(context):
    context.user_details = function_to_generate_user_details()

@then("I fetch and use generated user details")
def step_impl(context):
    function_to_do_something(context.user_details)

请注意,您的步骤实现不必在同一文件中,因为使用功能文件时,行为会搜索steps/目录中的所有文件。

答案 1 :(得分:0)

我认为您应该将数据保存到excel数据或任何文件中,然后再将其解析到其他函数上,而不是弄乱行为逻辑。