golang中的TestMain
go test 功能,提高了开发和测试的效率。
有时会遇到这样的场景:
进行测试之前需要初始化操作(例如打开连接),测试结束后,需要做清理工作(例如关闭连接)等等。这个时候就可以使用TestMain()。
下面例子的文件结构如下:
hello/add.go
hello/test_add.go
add.go
package hellofunc Add(a,b int) int {return a+b
}
add_test.go
package helloimport("fmt""testing"
)func TestAdd(t *testing.T) {r := Add(1, 2)if r !=3 {t.Errorf("Add(1, 2) failed. Got %d, expected 3.", r)}
}func TestMain(m *testing.M) {fmt.Println("begin")m.Run()fmt.Println("end")
}
复制
测试从TestMain进入
golang中的TestMain相关推荐
- Golang中Buffer高效拼接字符串以及自定义线程安全Buffer
本文原创文章,转载注明出处,博客地址 https://segmentfault.com/u/to... 第一时间看后续精彩文章.觉得好的话,顺手分享到朋友圈吧,感谢支持. Go中可以使用"+ ...
- 如何在golang中关闭bufio.reader_Golang 并发模型系列:1. 轻松入门流水线模型
Go语言中文网,致力于每日分享编码.开源等知识,欢迎关注我,会有意想不到的收获! Golang作为一个实用主义的编程语言,非常注重性能,在语言特性上天然支持并发,它有多种并发模型,通过流水线模型系列文 ...
- go语言的iota是什么意思_关于Golang中的iota
快速一览 iota是Golang中提供的一个简化常量和枚举编程的标识符,合理的使用这个标识符可以让代码变得更简洁,省去大量的不必要的代码. 比如下面的这个常量定义 const ( a = 1 b = ...
- Golang中的panic和recover(捕获异常)
Golang中的panic和recover(捕获异常) 参考文章: (1)Golang中的panic和recover(捕获异常) (2)https://www.cnblogs.com/zhzhlong ...
- golang 中string和int类型相互转换
总结了golang中字符串和各种int类型之间的相互转换方式: string转成int: test_int, err := strconv.Atoi(test_string) if err != ni ...
- golang中并发sync和channel
golang中并发sync和channel chenbaoke · 2014-12-08 13:00:01 · 19151 次点击 · 预计阅读时间 5 分钟 · 不到1分钟之前 开始浏览 这是一个创 ...
- golang中的sync.WaitGroup
golang中的sync.WaitGroup Posted on 2015/04/09刚才看golang的sync的包,看见一个很有用的功能.就是WaitGroup. 先说说WaitGroup的用途: ...
- 初步解读Golang中的接口相关编写方法
初步解读Golang中的接口相关编写方法 概述如果说goroutine和channel是Go并发的两大基石,那么接口是Go语言编程中数据类型的关键.在Go语言的实际编程中,几乎所有的数据结构都围绕接口 ...
- golang中utf8和汉字互转
golang中utf8和汉字互转 package mainimport ("fmt""strconv""strings" )func mai ...
最新文章
- IOS的UI基础02
- Mac下通过homebrew安装maven
- WebService入门Demo
- {转}maven+continuum安装与配置
- [转]分布式事务之TCC服务设计和实现注意事项
- ASP中随机函数Randomize的使用
- python 生成器装饰器_python: 生成器,装饰器以及列表推导式写法
- c语言void和null,C语言:为什么我得到NULL?
- python绘制turtle心电图代码_python的生态系统是由标准库和第三方库组成的,turtle库是其标准库,所以不需要安装。_学小易找答案...
- Key ssd_300_vgg/block3_box/L2Normalization/gamma not found in checkpoint的解决方案
- Atitit sql之道 艾龙著 attilax 1. Ddl dml	3 2. Crud	3 3. 高级sql	3 3.1. Merge	3 3.2. 数据库翻页 limit offset系列
- java 线程池_Java 线程池 ThreadPoolExecutor 八种拒绝策略浅析
- WPF学习之数据绑定
- linux服务器中安装SVN,linux服务器安装svn并上传项目
- 趋势移动或者移动应用2012
- c51编译器+linux,C51 开源编译器SDCC学习笔记-安装
- Mixly第三方用户库开发Arduino UNO使用EMW3080连接阿里云
- 卸载软件-Uninstall Tool(无残留)
- 根据sitemap一键推送给百度收录的python小脚本
- 2019.9.14校内考试