go test
testing 是go中自动测试的包, 直接import就可以使用, 使用时需要注意以下规范
执行测试函数的文件必须以 _test.go 结尾, 注意下划线
单元测试函数名必须以 Test 开头, 并且Test后的第一个字符要大写, 函数的参数只能有一个 *testing.T
基准测试必须以 Benchmark 开头, 同样Benchmark后的第一个字符要大写, 函数的参数也只有一个 *testing.B
package main import (
"testing"
) func TestAdd(t *testing.T) { //函数名必须以"Test" 开头, Test后的第一个字符"A"必须要大写, 参数只有一个, 没有返回值
a, b := 10, 20
c := Add(a, b)
if c != 30 {
t.Fatalf("c========%d", c) //实际返回值与预期返回值不一样(业务函数错误), Fatal输出日志, 并且会直接退出函数
}
t.Log("Add pass.................") //Log不会退出函数
} func BenchmarkAdd(b *testing.B) { //规范基本与Test相同
a, d := 10, 20
for i := 0; i < b.N; i++ {
Add(a, d)
}
} -----------------Add函数--------------------
func Add(a, b int) (sum int) {
sum = a + b
return
}
随机推荐
- No.9 selenium学习之路之CSS定位
CSS定位方式: 元素中间加“.”表示是class 1.通过ID定位 driver.find_element_by_css_selector("#ID值") 2.通过class定位 ...
- putIfAbsent
public static HashSet<Long> getOrInitHashMapCacheValue(Long mId){ // HashSet<Long> set = ...
- Writing a Kernel in C++
*:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !impor ...
- 一个带bash,带glibc,中国时区,非root用户可运行crond命令的基于alpine镜像的Dockerfile
这个镜像现在说起来简单, 带bash(增加执行脚本的兼容性,带GLIBC,中国时区,非root用户可运行crond命令-安全) 但让我开始陷入时,真的让我有段时间有点爆了. 比如,将filebeat文 ...
- 为什么Java中Long类型的比float类型的范围小?
为什么Long类型的比float类型的范围小? 2015-09-15 22:36 680人阅读 评论(0) 收藏 举报 版权声明:本文为博主原创文章,未经博主允许不得转载. 作为一个常识,我们都知道浮 ...
- [python selenium] 操作方法整理
个人笔记,摘抄自虫师python selenum,仅供个人参考 1.安装: pip install selenium 下载webdriver # webdriver 下载并放置在python主目录 · ...
- ref:LDAP入门
ref:https://www.jianshu.com/p/7e4d99f6baaf LDAP入门 首先要先理解什么是LDAP,当时我看了很多解释,也是云里雾里,弄不清楚.在这里给大家稍微捋一捋. 首 ...
- 远程连接mysql root账号报错:2003-can't connect to MYSQL serve
1.远程连接Linux系统,登录数据库:mysql -uroot -p(密码) 2.修改root账号的设置: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDE ...
- iuap
2017.12 用友今年着力点往云平台发展,是时候整理一下思路 第一:iuap 第二:Linux 第三:财务会计业务入门 第四:NC节点视频教程--财务模块 2019年3月4日 all in iuap ...
- idea在debug模式启动非常慢,日志正常debug模式一直在启动中状态
背景 最近在使用idea开发工具时遇到了一个奇怪的现象,使用run tomcat项目可以正常启动,但是使用debug模式启动时,控制台可以正常打印日志,但是进度十分缓慢,也没有任何报出任何错误信息.只 ...