Go web编程第八章 测试

在go语言中  开发人员主要的测试手段也是可以利用标准库:testing下的,实现标准的自动化测试的功能。

testing 包需要go 命令 test  测试文件要和被测试文件名字对应。测试文件_test.gp结尾。

比如 service.go 对应 service_test.go


如果进行单元测试:需要在测试函数中指定 testing.T 的参数,然后利用这个结构体.erro进行输出。

有主要的四个函数: Log :等同于fmt.print    Logf  等同于 fmt.fprint

                 fail: 标记失败   failNow 标记失败 并停止测试。


go test 会执行所有_test.go的文件。-v 可获取更详细的信息  -conver 获取用例对代码的覆盖率。

结构体testing.T的skip函数可以暂时跳过指定用例。

-short等同于上述作用。

如果想并行测试,需要调用结构体t。Paraller/函数 然后go test 命令时候 加 -paraller 后 加入 并行最大数量 比如10

基准测试

基准测试其实就是相当于测试程序的响应速度,在go 中需要利用testing.B的结构体

然后利用 命令行参数-bench 来进行测试。

结构体b.N一般是Go自己规定测试次数。go会自动调节

-run用于指定被需要的测试的用例  如果该用例不存在 则所有用例都不会被执行,用例如果存在 则只测试run的用例

http测试

主要利用testing/httptest完成测试,利用httptest.NewRecorder()创建http响应。

我们也可以自己写testmain函数 利用setup()和heardown ()来规定测试开始和结束//这俩个方法自己定义

利用结构体testing.M

GO三方测试框架

goCheck:利用其check和Assert方法来验证结果值

你可能感兴趣的:(Go web编程第八章 测试)