在待测试的私有函数所在的包内,新建一个xx_test.go文件
书写方式如下:
import ( "github.com/stretchr/testify/assert" "testing" ) var XXFunc = yourPrivateFunc func TestXXFunc(t *testing.T) { ret, ... := XXFunc(...) assert.Equal(t, ret, ...) }
就可以了~
补充:golang test使用(简单的单元测试)
1、测试单个文件,一定要带上被测试的原文件
go test -v wechat_test.go wechat.go
2、测试单个方法
go test -v wechat_test.go -test.run TestRefreshAccessToken
如果不指定文件名,会将当前目录的所有test方法进行测试
举例:
package main import ( "fmt" "testing" ) func TestFmt1(t *testing.T) {//1 方法必须传入testing.T 2 方法名必须是以Test开头,驼峰命名 fmt.Println("test1") } func TestFmt2(t *testing.T) { fmt.Println("test2") }
go代码保存为 t_test.go //必须以_test.go作为结束
在此代码同级目录执行 :
go test -v t_test.go -test.run TestFmt2 会调用TestFmt2
如果执行:
go test -v t_test.go -test.run TestFmt 会调用两个函数进行测试,它是正则匹配的
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。