go 语言对于单元测试是很重视的,且不说其他的作者的背景啊,开源库啊,第三方的支持之类的,有两点让我对 go 语言关于单元测试的重视程度的有信心的点在于:
go 语言源代码和内置库自身的单元测试完备性 (推荐学习:go)
go 语言自带单元测试命令
从这两点,我认为测试在 go 语言中具有非常重要的地位,所以在这篇文章中,我也尝试讲一些关于 go 语言单元测试的东西。
编写 go 单元测试代码
go 的测试方法看上去相对比较低级,它依赖于命令 go test 和一些能用 go test 运行的测试函数的编写约定。但是,我认为这就是所谓的 go 风格,用 go 以来,我的感受是 go 语言就是保持了 c 语言编程习惯的一门语言。
golang语言提供了一套单元测试编写规范,下面简单演示一下这个写法
单元测试文件必须以.go结尾
测试函数非常简单
calc.go
package main func add(a, b int) int { return a + b}
calc_test.go
package main import "testing" func testadd(t *testing.t) {r := add(2, 4)if r != 6 {t.fatalf("add(2, 4) error, expect:%d, actual:%d", 6, r)}t.logf("test add succ")}
以上就是golang单元测试怎么写的详细内容。