Все методы сценария @Before и @After вызываются перед выполнением сценария - PullRequest
1 голос
/ 09 октября 2019

У меня есть файл объектов с некоторыми сценариями, и у меня есть определения шагов (.java файлы), определенные для всех сценариев. В каждом определении шага у меня есть функции @Before (beforeScenario) и @After (afterScenario). Проблема заключается в том, что перед выполнением каждого сценария все определенные методы @Before и @After во всех определениях шагов вызывают. сценарий выполняется, методы сценария @Before и @After в файле определения шага этого сценария выполняются, а не методы в других определениях шага.

1 Ответ

1 голос
/ 09 октября 2019

Это характер по умолчанию перед тем, как запускаться перед каждым сценарием, но если вы хотите, чтобы какой-то конкретный сценарий выполнялся до этого, сделайте, как указано ниже, с тегом. Вы можете использовать с именем тега, как показано ниже:

Файл функции:

@First 
Scenario: This is First Scenario
 Given this is the first step
 When this is the second step
 Then this is the third step

Java-файл определения крюка / шага:

 @Before("@First")
    public void beforeFirst(){
        System.out.println("This will run only before the First Scenario");
    } 

Выше, чем прежде, будет работать только для этого сценария, вы можете использовать тот же тег с другим сценарием в файле объектов, где вы хотите, чтобы этот вызов вызывал:

Источник и более подробная информация:

https://www.toolsqa.com/cucumber/tagged-hooks-in-cucumber/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...