Golang Go语言中如何修改 Goland 默认生成的单元测试的样式
func check(a, b int) bool {
return false
}
用 goland 给上面这个函数生成的测试方法
func Test_check(t *testing.T) {
type args struct {
a int
b int
}
tests := []struct {
name string
args args
want bool
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if got := check(tt.args.a, tt.args.b); got != tt.want {
t.Errorf("check() = %v, want %v", got, tt.want)
}
})
}
}
默认生成的规则是把函数所有的参数放到一个 args
结构体里面。自己不太喜欢这种风格。
我希望是下面这种风格。
func Test_check(t *testing.T) {
tests := []struct {
name string
a int
b int
want bool
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if got := check(tt.a, ttb); got != tt.want {
t.Errorf("check() = %v, want %v", got, tt.want)
}
})
}
}
请教一下 goland 是否可以改成默认用我这种风格。
顺便再请教一个问题:
- 如果一个函数的参数有一个大的结构体(比如 k8s 的 deployment 那种),每次写单元测试的时候,要构造一个大的结构体,特别麻烦,有没有好的解决方案。
Golang Go语言中如何修改 Goland 默认生成的单元测试的样式
更多关于Golang Go语言中如何修改 Goland 默认生成的单元测试的样式的实战教程也可以访问 https://www.itying.com/category-94-b0.html
这个应该是一个叫做 gotests 的工具生成的,你可以手动运行命令行。参考 https://github.com/cweill/gotests
更多关于Golang Go语言中如何修改 Goland 默认生成的单元测试的样式的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
在 Go 语言中使用 Goland IDE 时,Goland 默认生成的单元测试文件样式通常遵循 Go 社区的标准格式。不过,如果你希望自定义这些默认生成的测试文件样式,有几种方法可以考虑:
-
手动编辑模板: Goland 使用了一些内置的模板来生成代码。虽然直接修改这些模板的方法较为繁琐且可能涉及修改 IDE 的安装文件,但你可以通过查找并编辑 Goland 安装目录下的相关模板文件来实现。这通常不推荐,因为修改不当可能导致 IDE 行为异常。
-
使用自定义代码片段: 更推荐的方法是使用 Goland 的 Live Templates 功能。你可以创建自定义的代码片段,用于生成你期望的单元测试结构。这可以通过 IDE 的设置菜单(
File
->Settings
->Editor
->Live Templates
)完成。 -
第三方插件: 检查是否有可用的第三方插件可以帮助你定制单元测试文件的生成。Goland 支持丰富的插件生态,可能会有插件提供了你需要的功能。
-
脚本化生成: 如果上述方法都不适用,你可以考虑使用脚本(如 Bash、Python 等)来生成测试文件,这样可以完全控制生成的样式和内容。
总之,直接修改 Goland 的默认模板文件虽然可能,但通常不推荐。使用 Live Templates 或脚本化生成是更为灵活和可持续的方法。希望这些建议能帮助你自定义 Goland 生成的单元测试文件样式。