$ go test -run=Example
$ go test -coverprofile
当测试一个包的时候,可以输出一个测试覆盖率,然后使用命令go tool来在浏览器里面可视化。
$ go test -coverprofile=c.out && go tool cover -html=c.out
注:测试fmt包
go test -coverprofile=c.out fmt
$ go test -exec
一般很少有人知道Go的这个功能,你可以通过-exec插入另一个程序。这个参数允许通过Go工具完成一些外部工作。
一个常见的需求场景是你需要在一些宿主机上面执行一些测试。我们可以通过-exec命令调用adb命令来把二进制文件导入安卓设备并且可以收集到结果信息。参考这个来在安卓设备上面执行。
$ go get -u
如果你通过go get命令获取Go包,而这个包已经存在于本地的GOPATH,那么这个命令并不会帮你更新包。-u可以强制更新到最新版。
如果你是一个库作者,你最好在你的安装说明上加上-u参数,例如,golint是这么做的:
$ go get -u github.com/golang/lint/golint
$ go get -d
如果你想clone一个代码仓库到GOPATH里面,跳过编译和安装环节,使用-d参数。这样它只会下载包并且在编译和安装之前停止。
当需要clone虚拟网址代码仓库的时候,我经常使用这个命令来代替git clone,因为这样可以把Go代码自动放入合适的目录下面。例如:
$ go get -d golang.org/x/oauth2/...
这样可以克隆到$GOPATH/src/golang.org/x/ouath2目录下面。假设golang.org/x/oauth2是一个虚拟网址,通过go get获取这个代码仓库要比找出仓库的真实地址(go.googlesource.com/oauth2)更简单。
$ go get -t
如果你的测试包的有附加的依赖包,-t可以一并下载测试包的依赖包。如果没有加这个参数,go get只会下载非测试包的依赖包。
$ go list -f
这个命令可以列出来Go的所有包,并且可以指定格式。这个写脚本的时候很有用。
下面这个命令将会打印所有依赖的runtime包
go list -f ‘' runtime [runtime/internal/atomic runtime/internal/sys unsafe]
参考链接:
http://blog.csdn.net/erlib/article/details/52703165
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对易采站长站的支持。









