如何在日志中打印作为TestNG中一个组的一部分运行的测试数量?

时间:2015-06-24 13:05:16

标签: selenium testing selenium-webdriver testng

我需要在实际执行测试之前打印这个。无论如何,我们最后得到了计数。

比如说我的testng.xml是这样的:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suite name="Suite1">
   <test name="test1">

   <groups>
      <run>
      <include name="functest" />
      </run>
   </groups>

   <classes>
      <class name="GroupTestExample" />
   </classes>

   </test>
</suite>

GroupTestExample类中有10个方法属于group functest,它应该在开始运行时在日志中打印10个。

1 个答案:

答案 0 :(得分:1)

创建一个扩展org.testng.TestListenerAdapter的自定义侦听器。之后覆盖以下方法:

public class MyCustomListener extends TestListenerAdapter {

  @Override
  public void onStart(ITestContext testContext) {
    super.onStart(testContext);
    System.out.println("Number of Test Methods: " + testContext.getAllTestMethods().length);
  }

}

您可以在测试的主要类上使用@Listeners注释添加自定义侦听器,例如

@Listeners({MyCustomListener.class})
public class MyMainTestClass { ... }

您可以在TestNG doc中找到更多信息:

  

TestNG听众 -   http://testng.org/doc/documentation-main.html#testng-listeners