跳至主要內容

testing单元测试及自动生成

gqzclGolang后端后端小于 1 分钟

testing单元测试及自动生成

go test 命令

go test 支持以下参数

-v 显示所有测试函数的运行细节

-run <regexp> 指定要执行的测试函数

-count N 指定执行测试函数的次数
# 执行所有以TestA开头的测试函数两次
go test -v -run="TestA.*" -count=2

使用assert包进行结果对比

包名:

"github.com/stretchr/testify/assert"

示例:

func TestAbs(t *testing.T) {
	got := Abs(-1)
	assert.Equal(t, got, 1)
}

了解更多函数:

go doc github.com/stretchr/testify/assert

自动生成单元测试

自动生成工具gotests

安装gotests

go get -u github.com/cweill/gotests/...

进入测试代码目录,执行gotests生成测试用例

gotests -all -w .