我已经开始使用 gomock 创建用于单元测试的模拟对象。Gomock 要求我使用某个参数运行 mockgen
命令,以便为模拟生成代码。每次被模拟的接口更改时,都需要再次执行此操作。因此,我认为go build
用适当的论点运行mockgen
可能是有意义的。
有没有办法让go build
在构建包之前运行脚本或 shell 命令?
如果没有,您如何生成模拟并使其保持最新状态?
我认为没有任何钩子可以
做到这一点go build
。
一种解决方案是使用make。您的Makefile
可能类似于以下内容:
.PHONY: build test
build:
go build
test:
mockgen ...
go test