操作命令,生成mock文件
mockgen -destination=mocks/mock_doer.go -package=mocks -source=doer/doer.go Doer
在工程更目录下执行, -destination指定生成mock代码的路径, -package=mocks 指定mock代码所处的包, -source=doer/doer.go 指定需要mock的接口的所在文件, 最后的Doer指source文件中哪个interface是需要mock的
在需要mock的interface上添加一行go:generate注释:
//go:generate mockgen -destination=../mocks/mock_doer1.go -package=mocks -source=./doer1.go
type Doer1 interface {
DoSomething1(int, string) error
}
然后在工程根目录中执行:
go generate ./...
在mock目录下又会生成一个mock文件
见/user/add_test.go