繁体   English   中英

如何从另一个方案中的一个步骤执行一个方案?

[英]How to execute a scenario from a step in another scenario?

下面是我要在另一个场景中执行一个场景的示例。 我怎样才能做到这一点?
我已经知道我可以使用execute_steps()执行其他步骤。

我的环境:macOS v10.14.1,Docker v18.06.1-ce,Django v2.1.4,behavior v1.2.6,behavior-django v1.1.0

Scenario: scenarioA
    Given ~
    When ~
    Then ~

Scenario: scenarioB
    Given scenarioA is completed # I want to exexute scenarioA here.
    When ~
    Then ~

是否有API可以从场景名称中运行场景?
是否有一个API可从方案名称中获取方案并将其分为多个步骤?

不会此行为是故意进行的,以消除在方案B通话期间方案A掉落的情况下发生冲突。

行为API只有一种方法可以从当前步骤中调用另一步骤: execute_steps()

官方教程的确切示例: 宏步骤

不幸的是,您无法从方案B中调用方案A。行为不支持类似的功能。 但是,您要执行的是在方案B的第一步中执行方案A中定义的所有步骤。我们只需在步骤文件中创建专用步骤来执行此操作。

@given('场景A的所有步骤都已完成')def step_execute_scenario_A(context):context.execute_steps(u'''给定step〜A当step〜A时然后step〜A''')

方案:scenarioB

Given all steps of scenario A is completed
When ~
Then ~

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM