Go单元测试与报告
1.编写代码
1)打卡GoLand,新建项目命名为gotest
2)在gotest目录下新建两个go file,如下图所示:

其中CircleArea.go为计算圆面积的待测go程序,代码如下:
package gotest
import "math"
func GetCircleArea(radius float32) float32 {
return math.Pi * radius * radius
}
CircleArea_test.go为测试用例程序,代码如下:
package gotest
import "testing"
//功能测试
/*
func TestGetCircleArea(t *testing.T) {
area := GetCircleArea(4.0)
if area != 50.265484 {
t.Error("测试未通过!")
} else {
t.Log("测试通过")
}
}*/
//压力测试
const N = 3
func TestGetCircleArea(t *testing.T) {
for i := 0; i < N; i++ {
area := GetCircleArea(4.0)
if area != 50.265484 {
t.Error("测试未通过!")
} else {
t.Log("测试通过")
}
}
}
2.执行测试
1)功能测试和压力测试
在终端执行命令:go test -v
2)覆盖率测试
在终端执行命令:go test -cover
3.生成报告
1)安装GoReporter
在终端执行命令:go get -u github.com/360EntSecGroup-Skylar/goreporter
2)生成报告
在终端执行命令:goreporter -p E:\GoProject\gotest -r E:\GoProject\gotest
成功后自动打开浏览器,如下图所示:
目录还会自动生成报告的html文件
Go单元测试与报告的更多相关文章
- nodejs 中使用 mocha + should + jscoverage 生成 单元测试覆盖率报告
最近一直在做nodejs,而关于js的单元测试覆盖率网上资料比较少而且吧比较零散,我从网上找来一些资料整理一下分析给大家,希望大家可以少走弯路. 首先我是从windows环境下测试的,用到的工具有 m ...
- jacoco+maven生成单元测试覆盖率报告
参考:https://www.petrikainulainen.net/programming/maven/creating-code-coverage-reports-for-unit-and-in ...
- Python单元测试PyUnit框架轻度整改
原理 参考:单元测试原理 背景 年后有段时间没写代码了,所以趁着周末找了个python单元测试玩下,测试自己的Android应用.发现PyUnit虽然在单个脚本文件中添加多个测试用例,比如官网提供的方 ...
- [转载] JaCoCo:分析单元测试覆盖率的利器
转载自http://www.ibm.com/developerworks/cn/java/j-lo-jacoco/和http://www.cnblogs.com/chenfengmugu/p/4937 ...
- maven 单元测试 ( http://www.cnblogs.com/qinpengming/p/5225380.html )
对junit单元测试的报告:类似这样的结果 ------------------------------------------------------- T E S T S ----------- ...
- .net持续集成sonarqube篇之 sonarqube集成单元测试
系列目录 通过前面章节我们可以看到,不论怎么构建,单元测试覆盖率一栏总是0% 这是因为单元测试覆盖率报告需要额外集成.这一节我们就讲解如何在sonarqube里集成单元测试覆盖率报告. 这里需要借助O ...
- OpenStack 的单元测试
目录 文章目录 目录 前言 单元测试能提高生产率 Python 单元测试工具清单 unittest Test Discover Test Fixture Test Suite Assert(断言) m ...
- MSTest/NUnit 单元测试 代码覆盖率试用 OpenCover 和ReportGenerator
VS自带是单元测试代码覆盖率(VS自带这个是最佳选择)需要企业版才有.很蛋疼...... 1.下载安装OpenCover 和ReportGenerator. 关于这2个是干啥的百度下.简单说就是可以分 ...
- sonarqube C# 单元测试覆盖率一栏总是0%解决办法
一.什么叫单元测试(unit testing)? 是指对软件中的最小可测试单元进行检查和验证.对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函 数,Java里 ...
- Jenkins 进阶篇 - 单元测试覆盖率
我们做项目开发,肯定免不了要写单元测试,不管是 Java 项目.Python 项目.PHP 项目,甚至是 nodejs 项目,都应该要写单元测试,本小节就来介绍单元测试的覆盖率报告输出和展示,在后面的 ...
随机推荐
- Qml 中实现任意角为圆角的矩形
[写在前面] 在 Qml 中,矩形(Rectangle)是最常用的元素之一. 然而,标准的矩形元素仅允许设置统一的圆角半径. 在实际开发中,我们经常需要更灵活的圆角设置,例如只对某些角进行圆角处理,或 ...
- 【python】如何优雅的终止while循环
1. 背景需求 python需要与外界或终端交互时,常常需要使用while循环一直跑. 如果需要终止程序,一般使用Ctrl+c,此时终端会打印一大堆backtrace,并且无法保留当前运行的状态,非常 ...
- Windows中通过NVM安装和切换各个NodeJS版本
1.下载nvm 下载地址:https://github.com/coreybutler/nvm-windows/releases 如我们下载:https://github.com/coreybutle ...
- 2025AI应用元年,DeepSeek让领域小模型训练成本急剧下降!
关注公众号回复1 获取一线.总监.高管<管理秘籍> 模型训练俗称炼丹,而炼丹是修士特权,这就显得模型训练离普通人很远了. 虽然是笑谈,但如果对其中情况不太了解确实也会因为其背后深厚.复杂的 ...
- C51基础知识总览
- vue - [01] 概述
题记部分 001 || 什么是Vue Vue(发音为 /vju:/,类似view)是一款用于构建用户界面的渐进式框架(JavaScript).它基于标准HTML.CSS和JavaScript构建, ...
- Ai 文本生成式大模型 基础知识
提示工程-RAG-微调 工程当中也是这个次序 提示词工程 RAG 微调 先问好问题 再补充知识 最后微调模型 RAG相关技术细节 选择合适的 Chunk 大小对 RAG 流程至关重要. Chunk 过 ...
- 【Matlab】cell 和cell array
最近写matlab程序和处理数据,用到了cell 和struct ,简单记录一下. 从cell array 删除cell 用{}不能删除,要用(),赋予[]. >> s.a=1 s = 包 ...
- Vulnhub-Node
利用信息收集拿到路径得到账户密码,下载备份文件,base64解密后,利用fcrackzip爆破zip压缩包,得到一个文件,查看app.js,发现泄露的账户密码,连接ssh,成功连接,利用ubuntu历 ...
- zstd压缩算法概述与基本使用
本文仅关注zstd的使用,并不关心其算法的具体实现 并没有尝试使用zstd的所有功能模式,但是会简单介绍每种模式的应用场景,用到的时候去查api吧 step 0:why zstd? zstd是face ...




