## testgen UT代码自动生成器 解放你的双手,让你的UT一步到位! ### 功能和特性 - 支持生成 Dao|Service 层UT代码功能(每个方法包含一个正向用例) - 支持生成 Dao|Service 层测试入口文件dao_test.go, service_test.go(用于控制初始化,控制测试流程等) - 支持生成Mock代码(使用GoMock框架) - 支持选择不同模式生成不同代码(使用"–m mode"指定) - 生成单元测试代码时,同时支持传入目录或文件 - 支持指定方法追加生成测试用例(使用"–func funcName"指定) ### 编译安装 #### Method 1. With go get ```shell go get -u github.com/go-kratos/kratos/tool/testgen $GOPATH/bin/testgen -h ``` #### Method 2. Build with Go ```shell cd github.com/go-kratos/kratos/tool/testgen go build -o $GOPATH/bin/testgen $GOPATH/bin/testgen -h ``` ### 运行 #### 生成Dao/Service层单元UT ```shell $GOPATH/bin/testgen YOUR_PROJECT/dao # default mode $GOPATH/bin/testgen --m test path/to/your/pkg $GOPATH/bin/testgen --func functionName path/to/your/pkg ``` #### 生成接口类型 ```shell $GOPATH/bin/testgen --m interface YOUR_PROJECT/dao #当前仅支持传目录,如目录包含子目录也会做处理 ``` #### 生成Mock代码 ```shell $GOPATH/bin/testgen --m mock YOUR_PROJECT/dao #仅传入包路径即可 ``` #### 生成Monkey代码 ```shell $GOPATH/bin/testgen --m monkey yourCodeDirPath #仅传入包路径即可 ```