新建一个文件夹 和两个文件, go的单元测试文件规定必须以 _test.go结尾 其格式为 *_test.go 其中*的位置随便取名即可。
calc.go
package main
//正确的
func add(a int, b int) int {
return (a + b)
}
//错误的函数
func sub(a int, b int) int {
return (a + b)
}
calc_test.go
在测试文件中,需要导入testing 包
为需要测试的函数 创建函数 ,函数名需要Test作为前缀,格式为 Test * ,其中*随便命名。 如下:
package main
import (
"testing"
)
// TestA Test 必须写,后边的名称随便写
func TestA(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")
}
func TestSub(t *testing.T) {
r := sub(4, 2)
if r != 2 {
t.Fatalf("sub(4,2) error ,expect:%d,actual:%d", 2, r)
}
t.Logf("test sub succ")
}
终端命令
先进入test包,使用 go test 命令进行测试,但是控制台不会全部的测试函数都会显示,只显示部分成功或者失败的测试函数。如果想显示所有测试函数测试的情况,使用 go test -v 命令进行查看