TestNG测试报告美化教程:使用testng-xslt-1.1.zip生成可视化HTML报告(附安装包)

简介: 下载并解压testng-xslt-1.1.zip,获取testng-results.xsl文件。将其复制到TestNG生成的test-output目录,与testng-results.xml同路径。用记事本在xml头部添加`<?xml-stylesheet type="text/xsl" href="testng-results.xsl"?>`并保存,双击xml文件即可在浏览器中查看美化后的HTML测试报告。

​一、先解压

  1. 安装包下载:https://pan.quark.cn/s/5861c1d5aba0 ,把 testng-xslt-1.1.zip这个压缩包下载下来(比如从网上或者别人给你的)。

  2. 右键点击这个 zip 文件,选择 解压到当前文件夹​ 或者解压到你想要放的目录里。

  3. 解压后会看到一些文件,主要关注里面的:

    • testng-results.xsl
    • 一个 lib文件夹(里面有一些 jar 包)
    • 可能还有一个 example文件夹(可以忽略,是示例)

二、准备好你的 TestNG 测试报告

  1. 你得先跑过一次 TestNG 的测试,跑完之后会生成一个测试报告,通常是 XML 格式的。

  2. 默认情况下,TestNG 会在你的项目目录下的 test-output文件夹中生成一个叫 testng-results.xml​ 的文件(这是关键!)。

    • 如果你没看到这个文件,检查一下是不是测试没跑,或者跑的时候没生成报告。
    • 跑测试的方法一般是右键项目 → Run As → TestNG Test(如果你用的是 Eclipse/IDEA 等 IDE)。

三、把 xsl 文件和报告放一起

  1. 找到你刚才解压出来的 testng-results.xsl文件。
  2. 把这个 testng-results.xsl文件 复制​ 到你 TestNG 报告所在的目录,也就是有 testng-results.xml的那个 test-output文件夹里。

📌 就是让 testng-results.xsltestng-results.xml在同一个文件夹里。


四、双击 XML 文件用浏览器打开(变好看的报告)

  1. 找到你的 testng-results.xml文件(在 test-output 文件夹里)。
  2. 双击这个 xml 文件,它通常会用浏览器(比如 Chrome、Edge)打开。
  3. 如果你之前把 testng-results.xsl文件也放在了同一个文件夹,那浏览器打开后看到的 XML 数据就会按照 xsl 样式变成一份 更漂亮、更易懂的 HTML 报告,类似网页一样,有颜色、有表格、清晰展示测试通过/失败情况。

⚠️ 注意:有些浏览器出于安全考虑,可能不允许直接加载本地的 xsl 文件。如果遇到打开后 XML 代码一堆,没有变好看,可以尝试以下方法:


五、如果双击 xml 没变漂亮(解决方法)

方法一:改 xml 文件头部(推荐简单试试)

  1. 用记事本或任意文本编辑器打开 testng-results.xml文件。
  2. 找到类似这样的头部内容(一般在文件最上面):
<?xml version="1.0" encoding="UTF-8"?>
  1. 在这一行 后面加上(注意换行):
<?xml-stylesheet type="text/xsl" href="testng-results.xsl"?>

完整示例:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="testng-results.xsl"?>
<testng-results ...>
   ...
</testng-results>
  1. 保存 xml 文件,然后 再次双击它用浏览器打开,一般就能看到美化后的测试报告了。

相关文章
|
8天前
|
Java Windows
IDEA 插件 SpotBugs Idea 1.2.7.zip 使用详解(一步步教你排查Bug)
SpotBugs Idea 1.2.7.zip 是IntelliJ IDEA的Java静态分析插件,可检测空指针、资源泄漏等潜在问题。下载后通过Settings→Plugins→Install from Disk安装,重启IDEA即可使用。分析项目时右键选择“Analyze with SpotBugs”,结果按严重程度分级显示,支持跳转定位代码。兼容性佳,误报可忽略或注解屏蔽。
259 144
|
12天前
|
Java Nacos Sentinel
SpringCloud 微服务解决方案:企业级架构实战
全面介绍 SpringCloud 微服务解决方案,涵盖服务注册发现、网关路由、熔断限流、分布式事务等企业级实践
|
9天前
|
安全 IDE API
Python类型提示进阶:告别“动态一时爽,重构火葬场”
Python类型提示让动态语言更可靠:通过静态类型注解提升代码可读性、重构效率与团队协作体验,结合mypy、Pydantic等工具链,实现从开发到运行时的全链路类型安全,平衡灵活性与工程化需求。(238字)
|
16天前
|
存储 机器学习/深度学习 人工智能
基于反馈循环的自我进化AI智能体:原理、架构与代码实现
自我进化智能体突破传统AI静态局限,通过“执行-反馈-调整”闭环,实现持续自主优化。它结合大模型与在线学习,利用多评分器反馈自动改进提示或参数,无需人工干预。适用于医疗、金融、编程等动态场景,推动AI迈向终身学习。
154 12
基于反馈循环的自我进化AI智能体:原理、架构与代码实现
|
7天前
|
消息中间件 Prometheus 监控
百万 QPS 不是洪水猛兽:高流量服务的采样、聚合与可视化,咱得这么干!
百万 QPS 不是洪水猛兽:高流量服务的采样、聚合与可视化,咱得这么干!
64 12
|
16天前
|
弹性计算 运维 API
用错工具比没工具更可怕:Ansible vs Terraform 实战对比,用最接地气的方式讲清楚
用错工具比没工具更可怕:Ansible vs Terraform 实战对比,用最接地气的方式讲清楚
151 22
|
14天前
|
存储 运维 对象存储
日志别乱滚!从“日志即事件”到 Loki 的低成本集中化日志实战心法
日志别乱滚!从“日志即事件”到 Loki 的低成本集中化日志实战心法
115 14
|
12天前
|
人工智能 算法 架构师
你的团队是"精锐特种兵",还是"草台班子"?就差这一份"源代码"
针对技术团队管理混乱、过度依赖个人的痛点,提出用AI指令将经验转化为标准SOP的解决方案。通过工程化思维重构管理流程,实现团队经验的"开源"与"复用",释放核心人才价值。
138 10
|
18天前
|
JavaScript Java 关系型数据库
基于微信小程序的防诈骗管理系统
本系统基于Spring Boot与Vue框架,采用B/S架构和MySQL数据库,构建集诈骗信息库、防骗知识传播、咨询举报功能于一体的防诈骗平台,旨在提升公众防范意识,降低诈骗风险,助力社会稳定与安全。
|
20天前
|
Java 调度 数据库
Spring框架中@Scheduled注解的使用示例
以上步骤和例子提供了Spring框架中 `@Scheduled`使用的具体方法,允许开发者灵活地进行任务调度。通过结合不同的属性,可以精确控制方法的调度策略,以满足不同场景下的需要。
94 9