2016-04-04 36 views
1

我是triyng,为我的测试项目cucumber,testng,selenium和java编写testng监听器。如何在黄瓜上使用TestNG监听器

我创建了听众延伸TestListenerAdapter并实现所有的方法,并列入的testng.xml

`<listeners> <listener class-name="TestNGListeners.Listeners"></listener> 
`<test name="Smoke"> 
`<packages> <package name="cucumber.runner.*"> </package> 
`</test> 

这个XML调用的TestRunner类RunCukesTest

`@CucumberOptions(features ="classpath:features", 
`glue ="stepDefinitions", 
tags="@tag_Login2",   
plugin={"pretty", "html:target/cucumber-html-report", 
"json:target/cucumber-report.json"} 
) 

`public class RunCukesTest { 

    `@Test() 
    `public void run_cukes() throws IOException { 
    `System.out.println("Run Cuke is started.."); 
    `TestNGCucumberRunner tr = new TestNGCucumberRunner(getClass()); 
    `tr.runCukes(); } 
    `} 

负责运行的所有测试的黄瓜。

运行后,我没有从我的侦听器方法得到任何回应。请帮我找到解决方案。

示例 - :每当我想运行的套房或亚军,这些方法应该工作,这样我可以写我的功能:

public void onTestSuccess(ITestResult tr){ 

     if(ITestResult.SUCCESS== tr.SUCCESS) 
     { 
      System.out.println("Test result PASS.."); 
     } 


    } 
+2

您可以使用QMetry Automation Framework(QAF),检查QAF是否为黄瓜用户https://qmetry.github.io/qaf/qaf-2.1.9/gherkin_client.html#benefits-of-using-qaf-gherkin- scenario-factory – user861594

+1

当您使用QAF时,您会获得很多自动化特定功能,您可以使用任何TestNG监听器和[QAF监听器](https://qmetry.github.io/qaf/latest/qaf_listeners.html) –

回答

0

我建议还是用cucmber API的服务挂钩,实现什么都你想从listner类中实现。他们可能会与黄瓜转轮发动机一起工作。

+0

这个https://medium.com/agile-vision/cucumber-bdd-part-2-creating-a-sample-java-project-with-cucumber-testng-and-maven-127a1053c180 –