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 项目,都应该要写单元测试,本小节就来介绍单元测试的覆盖率报告输出和展示,在后面的 ...
随机推荐
- NAT、DANT、SNAT的区别
NAT NAT(Network Address Translation,网络地址转换)是将IP 数据包头中的IP 地址转换为另一个IP 地址的过程.在实际应用中,NAT 主要用于实现私有网络访问公共网 ...
- 【推荐】一款开源且成熟的OA协同办公系统,自带低代码开发功能!
项目介绍 今天给大家推荐一款开源且拥有成熟的OA办公系统功能,自带低代码开发平台,可以快速搭建OA系统.人事系统.CRM系统.办公用品系统.项目管理系统.合同管理系统等,让你可以快速上手.快速实施.快 ...
- 一个 .NET 开源、免费、功能强大的Windows应用卸载神器
前言 今天大姚给大家分享一个基于 .NET 开源(Apache License).免费.功能强大的Windows应用卸载神器:Bulk Crap Uninstaller. 项目介绍 Bulk Crap ...
- oracle之sqlplus删除键不能用
方法一 1.终端命令,临时有效,重连失效 stty erase ^H 2.配置环境变量,永久有效 vi -oracle/.bash_profile stty erase ^H source -orac ...
- FLink13--KeyByMaxByApp
一.依赖 https://www.cnblogs.com/robots2/p/16048648.html 二.代码 package net.xdclass.class9; import java.ut ...
- 【忍者算法】从十字路口相遇到链表交点:探索相交链表问题|LeetCode第160题 相交链表
从十字路口相遇到链表交点:探索相交链表问题 生活中的相遇问题 想象两个人从不同的地方出发,最后在一个十字路口相遇.他们可能走过不同长度的路程,但最终会在同一个点汇合.这就很像我们今天要讨论的相交链表问 ...
- CSP-J/S2023游记
过了将近一年才回来补游记 Day -22 光速报名 Day -21~0 国庆假期+痛苦的whk Day 1 CSP-J 早上乘出租车风驰电掣赶到连大,在门口等半天发现已经可以进去了. 一路踩着爆浆的银 ...
- win - [01] 修改网络连接名称(网络1、网络2...网络10)
修改网络连接的名称 1.打开运行窗口:Windows 键 + R 2.在运行窗口输入 regedit,打开注册表编辑器 3.在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsof ...
- Linux系列:如何调试 malloc 的底层源码
一:背景 1. 讲故事 上一篇我们聊过 C# 调用 C 的 malloc 代码来演示heap的内存泄露问题,但要想深入研究得必须把 malloc 的实现库 libc.so 给调试起来,大家都知道在Li ...
- layui 自动触发radio和select
layui对radio和select做了包装,正常用jquery选中后使用trigger不起作用. 那么,怎么让其自动触发呢? 对radio来说,必须在$选中后.next('.layui-form-r ...




