我有一个包含某些方案的功能文件,并且为所有方案定义了步骤定义(.java
文件)。在每个步骤定义中,我都有@Before
(beforeScenario
)和@After
(afterScenario
)函数。问题在于,在执行每个方案之前,将调用所有步骤定义中所有定义的@Before
和@After
方法。
有没有一种方法可以实现它,使得仅当执行某个方案时,才执行该方案的步骤定义文件中的@Before
和@After
方案方法,而不执行该方法中的方法。其他步骤定义。
答案 0 :(得分:1)
这是在每种情况下运行之前先运行的默认属性,但是如果要执行特定的操作,请使用标记执行以下操作 您可以使用以下标记名称:
功能文件:
@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");
}
之前仅将在此场景下运行,您可以在功能文件中与其他场景一起使用相同的标记,并在此之前调用它:
来源以及更多详细信息: