go语言代码测试

dux003 · · 4377 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

在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语言代码测试

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

4377 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传