GoTests工具自动化test使用

8,306 阅读1分钟

gotests 工具

自动生成test文件和test方法

github.com/cweill/gote…

安装

$go get -u github.com/cweill/gotests/...

具体使用示例

用法

$gotests [options] PATH ...

options说明

-all           generate go tests for all functions and methods 
-excl          regexp. generate go tests for functions and methods that don't match. Takes precedence over -only, -exported, and -all
-exported      generate go tests for exported functions and methods. Takes precedence over -only and -all
-i             print test inputs in error messages
-only          regexp. generate go tests for functions and methods that match only.Takes precedence over -all
-w             write output to (test) files instead of stdout
-nosubtests    disable subtest generation. Only available for Go 1.7+
-template_dir  optional. Path to a directory containing custom test code templates
  • 为源文件中所有的函数和方法生成test方法
$gotests -all -w -i XXX.go
  • 为单个方法生成test方法
$gotests -w -only ^XXX$ PATH

在IDE下使用

  • goland

Win下快捷键ctrl+shift+T,也可以鼠标右键goto TEST ,选择Generate for selection,file,package进而去生成测试用例。

  • vscode

    ​选定go文件中的方法右键选择Go:Generate Uint Tests For Function即可生成test方法进行测试。

推荐文章

Docker云平台下 Go 语言单元测试实践

5 advanced testing techniques in Go

Unit testing and interfaces

Go 单元测试,基准测试,http 测试

go 测试,go test 工具的具体指令 flag

Using Subtests and Sub-benchmarks

如何使用subtests和sub-benchmark

Go test 少为人知的特性