go语言代码测试

在go的pkg库里提供了一个单元测试的框架testing,并提供了一个测试工具gotest

 

规则如下:

如果我们有一个文件add.go,这其对应的测试文件名为add_test.go

在add_test.go中,引入testing库,然后添加测试方法

测试方法的函数必须是如下形式

func TestXXX(t *testing.T) {

//....

}

而且其中第一个'X'还不能是小写字母,如果在测试方法中调用了testing库中的T类的Error,Fail,Fatal等方法则表示发生错误,测试不通过

 

 

比如我们有如下文件add.go

 

package add

 

func add(a, b int) int {

return a+b

}

 

编写如下测试文件:

 

package add

 

func TestAdd(t *testing.T) {

if add(1,1) != 2 {

t.Error("1+1!=2")

}

}

 

然后我们执行如下命令:

gotest add_test.go

 

则在一堆编译运行指令后,会看到最后一行显示为:

PASS

 

 

也可以选择写Makefile,那样就可以直接运行

gotest

进行测试,但是有一点需要注意,Makefile中的GOFILES列表里不需要包含*_test.go文件,gotest程序会自动包含,否则会出现重定义错误

本文来自:CSDN博客

感谢作者:dux003

查看原文:go语言代码测试

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。