2017-08-10 44 views
1

我在TestNG中使用了Allure2。我想寫我自己的偵聽器,在控制檯輸出中打印@Steps。allure2監聽器輸出控制檯中的步驟

我看到了界面「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()); 

} 

回答

2

傾城2聽衆由SPI機制管理。因此,您需要執行以下幾個步驟才能使其正常工作:

  • 執行StepLifecycleListener接口並覆蓋所需的方法。
  • 在您的項目的resources根目錄下創建META-INF/services文件夾。
  • 在上面的文件夾中用此界面的全名創建一個新文件。
  • 將實現類的完整路徑添加到此文件中。

您可以在下面的項目找到一個例子:約SPI https://github.com/sskorol/allure2-testng-report/blob/master/src/test/resources/META-INF/services/io.qameta.allure.listener.StepLifecycleListener

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