allure2监听器输出控制台中的步骤

时间:2017-08-10 23:29:58

标签: java testng allure

我正在使用Allure2和TestNG。我想编写自己的监听器,在控制台输出中打印@Steps。

我看到了界面" StepLifecycleListener"在诱惑但我无法在TestNg中实现此侦听器。有什么指针吗?

@Override
public void beforeStepStart(final StepResult result) {
    System.out.format("Starting step: %s", result.getName());

}


@Override
public void afterStepStop(final StepResult result) {
    System.out.format("Completed step: %s", result.getName());

}

1 个答案:

答案 0 :(得分:7)

Allure 2听众由SPI机制管理。因此,您需要执行几个步骤才能使其正常工作:

  • 实施StepLifecycleListener接口并覆盖所需的方法。
  • 在项目的META-INF/services根目录中创建resources个文件夹。
  • 在上述文件夹中按此界面的全名创建一个新文件。
  • 将实现类的完整路径添加到此文件中。

您可以在以下项目中找到示例:https://github.com/sskorol/allure2-testng-report/blob/master/src/test/resources/META-INF/services/io.qameta.allure.listener.StepLifecycleListener

有关SPI的更多信息:http://docs.oracle.com/javase/tutorial/sound/SPI-intro.html