Unit testing 如何在构建期间运行mockgen?

Unit testing 如何在构建期间运行mockgen?,unit-testing,go,gomock,Unit Testing,Go,Gomock,我已经开始使用创建单元测试的模拟对象。Gomock要求我运行带有特定参数的mockgen命令,以便为mock生成代码。每次被模拟的接口更改时,都需要再次执行此操作。因此,我认为让go buildrunmockgen使用适当的参数可能是有意义的 有没有办法让go build在构建包之前运行脚本或shell命令 如果没有,您如何生成模拟并使其保持最新?我认为不存在任何使这成为可能的go build挂钩 一种解决办法是使用make。您的Makefile可能类似于: .PHONY: build test

我已经开始使用创建单元测试的模拟对象。Gomock要求我运行带有特定参数的
mockgen
命令,以便为mock生成代码。每次被模拟的接口更改时,都需要再次执行此操作。因此,我认为让
go build
run
mockgen
使用适当的参数可能是有意义的

有没有办法让
go build
在构建包之前运行脚本或shell命令


如果没有,您如何生成模拟并使其保持最新?

我认为不存在任何使这成为可能的
go build
挂钩

一种解决办法是使用make。您的
Makefile
可能类似于:

.PHONY: build test

build:
    go build

test:
    mockgen ...
    go test