golang 生成单元测试报告

news/2025/3/21 4:27:35/

在 Go 语言中,你可以使用 go test 生成单元测试报告。以下是几种方法:


1. 生成基本测试报告(文本格式)

go test -v ./... > test_report.txt
  • -v:显示详细的测试信息
  • ./...:递归测试所有子目录
  • > test_report.txt:将结果保存到 test_report.txt 文件

2. 生成 JSON 格式的测试报告

Go 提供了 -json 选项来输出 JSON 格式的测试结果:

go test -json ./... > test_report.json

可以使用工具(如 jq)来格式化 JSON:

cat test_report.json | jq .

3. 生成覆盖率报告

如果你想生成测试覆盖率报告:

go test -cover ./...

或者导出覆盖率数据:

go test -coverprofile=coverage.out ./...
go tool cover -html=coverage.out -o coverage.html

然后,你可以在浏览器中打开 coverage.html 查看测试覆盖率的可视化报告。


4. 使用 gotestsum 生成更美观的报告

gotestsum 是一个更高级的测试工具,可以生成更易读的测试报告:

go install gotest.tools/gotestsum@latest
gotestsum --format standard-verbose > test_report.txt

golangcilint__49">5. 使用 golangci-lint 检查代码质量(可选)

如果你想结合静态分析工具:

golangci-lint run ./... > lint_report.txt

你可以根据需求选择合适的方法来生成 Go 的单元测试报告!🚀


http://www.ppmy.cn/news/1580769.html

相关文章

golang-type关键字

type 关键字 Type关键字在Go语言中作用很重要,他主要用来实现两个功能: 【自定义类型】 自定义类型底层是一种类型,但是不会拥有底层类型的方法。 自定义类型与底层类型相比是一种新类型,二者之间需要显式类型转换。 //语法 type 自定义类型…

算法刷题力扣

找到字符串唯一字符,因为字母只有26个,它们底层的存储是int类型,所以我们直接创建一个int类型数组,计算它们出现的个数,然后遍历s,判断是否等于1即可。 具体代码如下: class Solution { publ…

蓝桥杯刷题周计划(第三周)

目录 前言题目一题目代码题解分析 题目二题目代码题解分析 题目三题目代码题解分析 题目四题目代码题解分析 题目五题目代码题解分析 题目六题目代码题解分析 题目七题目代码题解分析 题目八题目代码题解分析 题目九题目代码题解分析 题目十题目代码题解分析 前言 大家好&#…

c++如何利用线程池和epool设计高并发服务器

设计一个高并发服务器需要有效地处理大量同时连接的客户端请求。结合线程池和epoll可以实现高效的I/O多路复用和任务并发处理。 1. 基本概念 线程池:用于管理和重用线程,避免频繁创建和销毁线程带来的开销。epoll:Linux下的高效I/O多路复用…

力扣958. 二叉树的完全性检验(Java实现)

958. 二叉树的完全性检验 1. 思路 判断是否为完全二叉树的两个条件: 如果节点有右孩子,没有左孩子,一定不是完全二叉树如果节点的孩子不全,那么后续的节点必须为叶子节点才是完全二叉树,否则不是。(上图中…

JVM的一些知识

JVM简介 JVM 是 Java Virtual Machine 的简称,意为 Java 虚拟机。 虚拟机是指通过软件模拟的具有完整硬件功能的、运行在一个完全隔离的环境中的完整计算机系统。常见的虚拟机:JVM、VMwave、Virtual Box。 JVM 和其他两个虚拟机的区别: VMw…

soul能用ip精准定位吗?ip属地准确吗

在当今的社交应用市场中,SOUL作为一款备受欢迎的社交软件,以其独特的匹配机制和丰富的互动功能吸引了大量用户。然而,随着网络环境的日益复杂,用户对SOUL的IP定位功能也产生了诸多疑问。那么,SOUL能用IP定位吗&#xf…

Mac:JMeter 下载+安装+环境配置(图文详细讲解)

📌 下载JMeter 下载地址:https://jmeter.apache.org/download_jmeter.cgi 📌 无需安装 Apache官网下载 JMeter 压缩包,无需安装,下载解压后放到自己指定目录下即可。 按我自己的习惯,我会在用户 jane 目…