下面是我要在另一个方案中执行一个方案的示例。
我该怎么办?
我已经知道我可以使用execute_steps()
执行其他步骤。
我的环境: macOS v10.14.1,Docker v18.06.1-ce,Django v2.1.4,行为v1.2.6,行为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可从方案名称中获取方案并将它们分为步骤?
答案 0 :(得分:0)
否。此行为是故意进行的,以消除在场景B通话期间场景A掉下的情况下发生冲突。
行为API只有一种方法可以调用当前步骤中的另一步骤:execute_steps()
官方教学课程,其确切示例:macro step
答案 1 :(得分:0)
不幸的是,您不能从方案B调用方案A。行为不支持类似的功能。但是,您要执行的是在方案B的第一步中执行方案A中定义的所有步骤。我们只需在步骤文件中创建专用步骤来执行此操作。
@given(“方案A的所有步骤都已完成”) def step_execute_scenario_A(上下文): context.execute_steps(u’’ 给定步骤〜 当一步〜 然后踩〜一个“’”
方案:方案B
Given all steps of scenario A is completed
When ~
Then ~