1. Learn Go with tests
当学习一门语言时, 最有效的办法不是每一章的去阅读概念, 而是通过例子探索学习.
如果没有学习过 Go 语言的, 强烈建议通过编写测试学习 Go 语言, 不仅为测试驱动开发打下基础, 还是可以使用 Go 语言编写健壮的、经过良好测试的系统.
2. Golang Test
Go语言中自带有一个轻量级的测试框架testing和自带的go test命令来实现单元测试和性能测试,testing框架和其他语言中的测试框架类似,你可以基于这个框架写针对相应函数的测试用例,也可以基于该框架写相应的压力测试用例。测试用例有四种形式:TestXxxx(t *testing.T) // 单元测试
TestBenchmarkXxxx(b* testing.B) // 压力测试
Example_Xxx() // 测试控制台输出的例子
TestMain(m *testing.M) // 测试Main函数
当然我们也可以使用第三方的测试框架, 更加高效的测试我们的代码:
3. 单元测试需要创建一个名称以 _test.go 结尾的文件,该文件包含 TestXxx 函数
func TestXxx(*testing.T) // Xxx 可以是任何字母数字字符串,但是第一个字母不能是小些字母。
单元测试中,传递给测试函数的参数是 *testing.T 类型。
3.1 单元测试方法当我们遇到一个断言错误的时候,标识这个测试失败,会使用到:1
2Fail: 测试失败,测试继续,也就是之后的代码依然会执行
FailNow: 测试失败,测试中断
当我们只希望打印信息,会用到:1
2Log: 输出信息
L