在步骤内调用场景 - 黄瓜

时间:2018-02-14 15:10:01

标签: java cucumber gherkin

大家好, 我有一个这个给定步骤的场景

Scenario: Registration

Given I am logged in
.
.

我想在此步骤中使用“使用有效用户名和密码登录”的现有方案。

你知道如何打电话吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

你不应该从一个步骤中调用另一个场景,这不是一个好习惯。相反,您可以使用执行登录的@Before挂钩或执行登录的后台步骤。您还可以在@Before钩子中使用自定义标记(例如@loginRequired),它会检查当前正在执行的场景是否具有该标记,如果是这种情况则执行登录,如下例所示:

@loginRequired
Scenario: Registration
Given ...
When ...
Then ...

@Before
public void setUp(Scenario scenario) {
    if(scenario.getSourceTagNames().contains("@loginRequired")) {
        // Perform Login
    }
}