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程序会自动包含,否则会出现重定义错误

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值