TestNG是通过 Listeners 或者 Reporters 生成测试报告。

  • Listeners,即 org.testng.ITestListener 的实现,能够在测试执行过程中发出各种测试结果的事件;
  • Reporters,即 org.testng.IReporter 的实现,能够在所有的测试套件执行完毕后发出测试结果的事件,其中包括多个描述测试结果的对象。

1. ITestListener---------------

ITestListener 是所有监听器中最常用的一个,也是最重要的一个。该接口的继承关系如下图所示:

testng日志和报告

这里有个TestListenerAdapter 实现类,该类以空方法(即未实际实现)实现了 ITestListener 接口的全部方法。

编写ITestListener接口的实现时,为了避免实现不必要的接口方法,我们往往只要扩展TestListenerAdapter类即可。

事实上,除了JUnitXMLReporter之外,其他几个***Reporter都是扩展自TestListenerAdapter类。

而 JUnitXMLReporter 就是一个JUnit的XML格式的报告生成器。

 

ITestListener 接口中定义的方法如下:

testng日志和报告

 

2.IReporter-------------------

IReporter 接口也是继承自 ITestNGListener 接口,用于生成报表。该接口中只定义了一个方法:

void generateReport(Java.util.List<XmlSuite> xmlSuites, java.util.List<ISuite> suites, java.lang.String outputDirectory);

该方法可以在指定目录下为指定的测试套件生成报表。

该方法在TestNG执行完所有的测试套件后被调用,方法中的参数包含所有的测试结果。

 

相关文章:

  • 2021-09-14
  • 2022-12-23
  • 2021-08-07
  • 2021-07-31
  • 2022-12-23
  • 2019-02-10
猜你喜欢
  • 2021-07-30
  • 2019-09-24
  • 2021-09-06
  • 2022-03-08
  • 2021-10-11
  • 2021-08-28
  • 2021-06-21
相关资源
相似解决方案