十、单元测试与基准测试
Go 提供了 test 工具用于代码的单元测试,test 工具会查找包下以_test.go 结尾的文件,调用测试文件中以 Test 或 Benchmark 开头的函数并给出运行结果 单元测试指的是功能测试 基准测试指的是性能测试 1. Test 函数 测试函数需要导入 testing 包,并定义以 Test 开头的函数,参数为 testing.T 指针类型,在测试函数中调用函数进行返回值测试,当测试失败可通过 testing.T 结构体的 Error*函数抛出错误 测试文件名为go_test.go 2.测试覆盖率 这里的测试覆盖率表示测试代码 能测试代码的百分比 go test -v -coverprofile=cover.out test/gotest 这里的100%表示测试代码能测试多少代码 go tool cover -html cover.out 这个可以用web页面来观察 绿色代表可以测试的,如果没有被覆盖那么会是红色 3.基准测试 基准测试常用于代码性能测试,函数需要导入 testing 包,并定义以Benchmark 开头的函数,参数为 testing.B 指针类型,在测试函数中循环调用函数多次 测试文件名为bench_xxx.go 来源: CSDN 作者: 来自万古的忧伤 链接: https://blog.csdn.net/weixin_45413603