Cucumber JVM:运行 在全局挂钩之前标记挂钩

Cucumber JVM: Run Tagged hooks before global hook

我正在使用 Cucumber JVM 进行硒测试。我有几个测试用例来注册用户,每次测试后我想删除用户。

因此,我创建了一个新的标记钩子,用于这些测试。如下所述

问题是 Gloabl 钩子 tearDown 运行s 在标记钩子 deleteUser 之前关闭了浏览器,所以我不能 运行 步骤删除用户。

有什么办法可以在 tearDown 之前 运行 deleteUser 作为钩子的一部分。

@After
public void tearDown(Scenario scenario){
    System.out.println("teardown");  
    closeDriver();
}

@After("@deleteNewUser")
public void deleteUser(){
    System.out.println("deleteUser");
 }

这就是我使用这些挂钩的方式

@deleteNewUser
Scenario: Register user
  Given New User is registered

输出

teardown

deleteUser

After 挂钩上使用 order 属性。最高价值的订单将首先执行。反转 Before 钩子。

@After(order=5)
public void tearDown(Scenario scenario){
    System.out.println("teardown");  
    closeDriver();
}

@After("@deleteNewUser", order=10)
public void deleteUser(){
    System.out.println("deleteUser");
 }