如何理解这个Go makefile?

时间:2014-08-26 00:15:01

标签: makefile go

COVERPROFILE=cover.out

default: test

cover:
    go test -coverprofile=$(COVERPROFILE) .
    go tool cover -html=$(COVERPROFILE)
    rm $(COVERPROFILE)

dependencies:
    go get -d .

test:
    go test -i ./...
    go test -v ./...

.PHONY: coverage dependencies test

我不明白这个golang makefile。是否有golang makefiles的教程?我搜索了谷歌并没有找到任何完整的。例如,我没有看到任何有关“封面”等的解释。

2 个答案:

答案 0 :(得分:4)

这只是一个简单的make文件,甚至写得不好。

  1. 仅运行make将执行test
  2. 下的命令
  3. make dependencies将下载当前包的所有依赖项
  4. make cover将进行覆盖测试并输出html文件

答案 1 :(得分:1)

您可以在golang page上找到足够的信息和文档。在右上角有一个“搜索”,插入“cover”或“-cover”会产生非常有用的信息,例如this

  

封面是用于分析生成的覆盖率配置文件的程序   'go test -coverprofile = cover.out'。   封面也被'go test -cover'用来重写源代码   用于跟踪每个函数的哪些部分被执行的注释。它   一次运行一个Go源文件,计算近似基本   通过研究来源来阻止信息。因此更便携   比二进制重写覆盖工具,但也有点能力。   例如,它没有探测内部&&和||表达式,并且可以   被多功能的单一陈述轻微搞糊涂   文字。

     

有关使用信息,请参阅:

go help testflag
go tool cover -help