Selenium 中的 TestNG 报告生成:如何生成?

什么是 TestNG 报告?

TestNG 报告是使用 TestNG 执行测试用例后生成的默认 HTML 报告。这些报告可帮助您识别有关测试用例和项目状态的信息。Selenium 中的 TestNG 报告有 passTest、failTest 和 skipTest 三种方法,用于检查测试用例的数据。

在进行自动化测试和手动测试时,报告生成非常重要。

  • 通过查看结果,您可以轻松识别有多少测试用例通过、失败和跳过。
  • 通过查看报告,您将了解项目的状态。

Selenium webdriver 用于自动化 Web 应用程序,但它不会生成任何报告。

  • TestNG 将生成默认报告。
  • 当您执行 testng.xml 文件并刷新项目时。您将在该文件夹中获得 test-output 文件夹,用于 TestNG 中的报告。
  • 右键单击 emailable-report.html 并选择该选项。使用 Web 浏览器打开。

如何在 Selenium 中生成报告

方法一:emailable-report.html

  1. 单击选项“emailable-report.html”
  2. 单击选项 Web 浏览器

Emailable-Report.html

如果两个类都通过,TestNG 报告中的输出报告将如下所示

Emailable-Report.html

考虑以下场景,您故意使测试用例失败,即 DemoB 类。然后将这两个类转换为 testng.xml 套件文件并运行。然后结果将如下所示。它将显示失败的测试用例

这是 DemoB 类的结果

Emailable-Report.html

类似地,类 DemoA 的结果将如下所示

Emailable-Report.html

方法二:index.html

  1. 右键单击项目目录中的 index.html。
  2. 选择“用 Web 浏览器打开”选项。它将按以下顺序显示结果。

Index.html

结果将如下所示

Index.html

方法三:Reporter 类

除了这些 TestNG 报告生成方法之外,您还可以使用 object.properties 文件来存储系统生成的日志以及用户生成的日志。但存储测试中日志信息的最简单方法之一是使用 Reporter Class

Selenium 中的 Reporter.log 是 TestNG 中用于 Selenium 报告的类。它提供了 4 种不同的方法来存储日志信息,它们是

  1. Reporter.log(String s);
  2. Reporter.log(String s, Boolean logToStandardOut);
  3. Reporter.log(String s, int level);
  4. Reporter.log(String s, int level, Boolean logToStandardOut);

示例:

创建两个类,如 DemoA 和 DemoB,并在类中编写以下代码。

对于类 DemoA;

  • DemoA 的代码已在上面解释。这里您使用的是 Reporter 类的 log 方法。 (要实现报告类,该类必须实现 org.testng.IReporter 接口)。
  • log 方法是 Reporter 类的静态方法。因此,您通过 Reporter 类访问该方法。
  • log 方法用于存储程序内部编写的日志信息。通过查看日志信息,您将很容易知道程序的执行在哪里停止。

Reporter Class

对于类 DemoB

Reporter Class

  • 现在,通过选择这两个类并创建 testng.xml 文件
  • 选择“运行方式”和
  • 单击“转换为 testng”。
  • 然后通过选择“运行方式”并选择“testng 套件”来运行此 testng.xml 文件。
  • 然后刷新项目并打开 test-output 文件夹。
  1. 在 test-output 文件夹中,打开 emailable-report.html。它将如下所示

    Reporter Class

同样,您也将获得 Demo B 项目的输出。

2. 在 test-output 文件夹中打开 index.html。它将如下所示

Reporter Class

点击报告器输出。它将打开在测试方法中编写的任何日志信息。

Reporter Class

点击“时间”。它将显示使用 TestNG 报告工具运行类中存在的测试方法所需的时间。

Reporter Class