1. 问题
在用GoLand写Go代码的时候,不像之前
Java
那样,可以直接在一个程序中使用Junit
可以直接去跑一个代码块了,在go里面是有单独的测试库testing
可以使用,只是需要遵守规则:
- 一般测试文件以
测试程序名_test.go
命名- 测试函数需要为
func TestXxxx
注意第一个X
一定要大写,否则不生效
在我使用的过程中,原意是对User
进行数据库的添加用户操作的测试。
可以看到如果单独的去执行这个测试函数func TestAddUser
会发现报错未定义,实际上这个User
在1中可以看到是定义在同一个包下,可以直接使用,但是编译的时候并没有一同编译User
导致方法与结构体均未定义。
实际上这个问题并不是go的问题,而是goland的问题,其实也不是goland的问题,是执行的问题。
2. 解决办法
方法1
利用terminal
直接进入到model
下面使用go test
可以发现程序执行成功
方法2
邮件点击run -> go test model
即可
3. 引入github的第三方包
使用go
会频繁的调用第三方的库包,如何引入到然后调用呢?
当我们从网上下载下来之后,第三方库会存放在我们的GOPATH/src
下面,此时如果想要顺利使用第三方库的话,需要再goland
的settings
中添加project GoPATH
此时即可在程序中直接导入第三方库使用了。
4. 小结
初学Go
,也许路会走很长,也许在明年会出于其他的原因走不到底,但现在就继续学着!
Keep thinking, keep coding! 2020年12月21日20:31:09写于南京,加油