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
- 单击选项“emailable-report.html”
- 单击选项 Web 浏览器
如果两个类都通过,TestNG 报告中的输出报告将如下所示
考虑以下场景,您故意使测试用例失败,即 DemoB 类。然后将这两个类转换为 testng.xml 套件文件并运行。然后结果将如下所示。它将显示失败的测试用例。
这是 DemoB 类的结果
类似地,类 DemoA 的结果将如下所示
方法二:index.html
- 右键单击项目目录中的 index.html。
- 选择“用 Web 浏览器打开”选项。它将按以下顺序显示结果。
结果将如下所示
方法三:Reporter 类
除了这些 TestNG 报告生成方法之外,您还可以使用 object.properties 文件来存储系统生成的日志以及用户生成的日志。但存储测试中日志信息的最简单方法之一是使用 Reporter Class。
Selenium 中的 Reporter.log 是 TestNG 中用于 Selenium 报告的类。它提供了 4 种不同的方法来存储日志信息,它们是
- Reporter.log(String s);
- Reporter.log(String s, Boolean logToStandardOut);
- Reporter.log(String s, int level);
- Reporter.log(String s, int level, Boolean logToStandardOut);
示例:
创建两个类,如 DemoA 和 DemoB,并在类中编写以下代码。
对于类 DemoA;
- DemoA 的代码已在上面解释。这里您使用的是 Reporter 类的 log 方法。 (要实现报告类,该类必须实现 org.testng.IReporter 接口)。
- log 方法是 Reporter 类的静态方法。因此,您通过 Reporter 类访问该方法。
- log 方法用于存储程序内部编写的日志信息。通过查看日志信息,您将很容易知道程序的执行在哪里停止。
对于类 DemoB
- 现在,通过选择这两个类并创建 testng.xml 文件
- 选择“运行方式”和
- 单击“转换为 testng”。
- 然后通过选择“运行方式”并选择“testng 套件”来运行此 testng.xml 文件。
- 然后刷新项目并打开 test-output 文件夹。
同样,您也将获得 Demo B 项目的输出。
2. 在 test-output 文件夹中打开 index.html。它将如下所示
点击报告器输出。它将打开在测试方法中编写的任何日志信息。
点击“时间”。它将显示使用 TestNG 报告工具运行类中存在的测试方法所需的时间。