优点:
不需要额外安装任何工具,因为报告功能是TestNG框架的默认设置;
无需提供任何代码/构建更改即可创建HTML报告;
提供创建详细报告 (emailable-report.html)的功能,可以与团队中必要的利益相关者共享;
可作为Selenium和Java组合的最佳报告工具;
易于与Jenkins、GitLab CI等CI/CD工具一起使用。
缺点:
仅适用于TestNG框架;
仅支持Java。
我们的观点:
尽管使用TestNG框架生成的默认报告具有原始的外观和感觉,但它提供了测试经理所需要的详细信息。
2. ReportNG
ReportNG是一个简单的HTML报告插件,是为TestNG 框架开发的。它可以用来代替默认的 TestNG HTML报告。ReportNG在测试报告中使用颜色编码机制,使报告一目了然。
该插件生成100%有效的XHTML 1.0文件。有一个选项可以通过使用你自己的CSS文件覆盖默认样式表来替代报告中使用的默认颜色。
语言–Java
是否开源–开源
优点:
拥有比TestNG框架提供的默认HTML报告更详细的报告机制;
使用用户的CSS文件轻松自定义外观;
易于与Jenkins等CI/CD工具集成。
缺点:
仅适用于TestNG框架;
最新版本 (ReportNG 1.1.4) 已使用TestNG 6.2进行测试,并可与更高版本的TestNG 一起使用;
ReportNG 1.1.4是ReportNG的最终版本,因为该软件不再维护和升级。但是,ReportNG可在GitHub上进行开发。
我们的观点:
与使用TestNG生成的默认报告相比,ReportNG插件为Selenium测试结果报告增加了巨大的价值。然而,它并不是Selenium with Java的最佳报告工具,因为它的开发已经停止。它有可能不适用于 TestNG 框架的未来版本。
3. Allure
Allure是一个开源框架,旨在创建易于理解的测试执行报告。它是轻量级的,可让你添加参数、步骤和附件。
Allure中的报告生成分两步进行。在第一步(也称为测试执行阶段)中,测试框架附有一个名为适配器的小型库,该库将执行测试的详细信息保存到XML文件中。在第二步(也称为报告生成阶段)中,XML文件被转换为HTML报告,可以使用命令行工具、CI插件或构建工具执行转换步骤。
语言——Ruby、Python、Scala、Java、PHP和C#
是否开源——开源
优点:
Allure为广泛使用的Ruby、Python、Scala、Java、PHP和C#测试框架提供适配器;
生成详细的测试报告,清晰显示摘要、缺陷、行为(用于BDD测试)、图表和时间线;
为流行测试框架提供适配器;
可用作本地解决方案;
易于与流行的CI/CD工具(如Jenkins、GitLab CI等)集成,其中报告生成是POST Build操作不可或缺的一部分;
支持截屏,这是一项有助于UI测试的功能;
使用不同编程语言的详细文档和详尽示例;
Allure插件系统为报告的表示提供了更高水平的灵活性。
缺点:
如果你想从Allure框架中获得更好的价值,你应该将它与CI/CD工具(如Jenkins、Bamboo、TeamCity等)结合使用。
我们的观点:
Allure框架是Selenium最好的报告工具之一,因为它提供了现代风格的报告。Allure报告可以使用一系列工具生成,如命令行、Jenkins、TeamCity、Bamboo、Codefresh、Gradle和Maven。
Allure是少数可用于大型项目的Selenium 报告工具之一,因为它可以创建易于理解的报告。
4. JUnit
与TestNG一样,JUnit也以非常简单易懂的格式提供Selenium测试结果报告。
语言——Java
是否开源——开源
优点:
JUnit框架默认提供报告功能;
JUnit是一种流行的开源单元测试工具,供Java开发人员使用。因此,JUnit的报告功能成为 Selenium和Java的最佳报告工具之一;
它创建易于理解的HTML报告。
缺点:
要在JUnit中使用Selenium报告工具,必须完成一些配置。
我们的观点:
由于JUnit是一种流行的单元测试测试框架,如果报告的外观不是最优先考虑的,那么JUnit 报告将成为首选。你可以将JUnit框架与流行的CI/CD工具(如Jenkins)一起使用。
5. HTML Publisher + Jenkins
Jenkins是一个强大的开源 CI/CD 工具,HTML Publisher插件用于将内置Jenkins生成的HTML 报告发布到工作页面。
HTML Publisher插件可以与Jenkins中的FreeStyle和Pipeline项目一起使用,安装插件并将其与Jenkins一起使用使工作变得非常容易。
如果要在Jenkins管道中使用HTML Publisher插件,那么必须在管道的“发布”部分添加 publishHTML。
语言——Java、Python、C#
是否开源——开源
优点:
Jenkins中的HTML Publisher插件允许用户发布在测试运行期间创建的HTML报告,并将其包含在Jenkins项目结果中;
它支持Ruby、Python、Java和C#的流行测试框架;
你可以在Jenkins中使用第三方API生成带有测试结果的HTML报告;
在FreeStyle项目和Jenkins Pipeline项目中使用该插件相对容易;
使用统一的颜色显示执行测试的状态,使报告内容易于理解。
缺点:
用户手册并不详细,无法解答用户在安装插件时遇到的问题。
我们的观点:
如果你使用Jenkins进行持续集成并寻找可用于发布简单HTML报告的插件,你应该选择 HTML Publisher插件。
在本博客中,我们详细介绍了5大Selenium测试报告工具,其中有一些针对特定语言,而另一些则针对特定的CI/CD工具。理想Selenium报告工具的使用对于任何涉及Selenium自动化测试的项目都至关重要。它有助于跟踪测试活动的进度,并有助于将测试状态传达给项目的利益相关者。
参考文章:https://www.lambdatest.com/blog/best-reporting-tools-for-selenium/
文章标签: 测试报告 测试工具