Golang 单元测试规范
Posted Data-Mining
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Golang 单元测试规范相关的知识,希望对你有一定的参考价值。
目录
前言
说到代码的健壮性,单元测试是少不了的,基本上所有语言都有自己的单元测试方案。工作这么多年,单元测试也没少写,像 Java、C++、Golang 都有过恶补单元测试的经历,为的就是应付各种 KPI,但是也不能说单元测试没有用,只是大多数时候不是为了单元测试而单元测试,而是为了应付检查而单元测试。上一篇文章已经大致介绍了如何在 VSCode 中配置 Golang 的单元测试。今天呢,就来说一说 Golang 语言的单元测试都有哪些规范。
正文
上一篇文章《VSCode配置Golang单元测试实例》,感觉大家比较喜欢,今天就再多讲一些内容。
PS:为什么贴上面的图呢,原因有两个,首先,想说明大家比较喜欢这个主题;其次,这个阅读量对我们程序员有特殊的意义。
1. 单元测试文件命名规则
单元测试需要创建单独的测试文件,不能在原有文件中书写,名字规则为 xxx_test.go。这个规则很好理解。
2. 单元测试包命令规则
单元测试文件的包名为原文件的包名添加下划线接test,举例如下:
// 原文件包名:
package xxx
// 单元测试文件包名:
package xxx_test
3. 单元测试方法命名规则
单元测试文件中的测试方法和原文件中的待测试的方法名相对应,以Test开头,举例如下:
// 原文件方法:
func Xxx(name string) error
// 单元测试文件方法:
func TestXxx()
4. 单元测试方法参数
单元测试方法的参数必须是t *testing.T
,举例如下:
func TestZipFiles(t *testing.T) ...
结尾
单元测试是软件开发过程中对最小单位进行正确性检验的测试工作。单元测试是开发人员自己在功能开发过程中进行的,其意义也非常重大,比如提高代码质量、可以尽早发现问题、保证重构的正确性,另外,大家都说单元测试是最好的文档,自己也非常赞同。好啦,关于 Golang 单元测试规范就介绍完了。
作者简介:😄大家好,我是 Data-Mining(liuzhen007),是一位典型的音视频技术爱好者,前后就职于传统广电巨头和音视频互联网公司,具有丰富的音视频直播和点播相关经验,对 WebRTC、FFmpeg 和 Electron 有非常深入的了解,😄公众号:玩转音视频。同时也是 CSDN 博客专家、华为云享专家(共创编辑)、InfoQ 签约作者,欢迎关注我分享更多干货!😄
以上是关于Golang 单元测试规范的主要内容,如果未能解决你的问题,请参考以下文章
一篇文章让你学会写golang 单元测试基准测试子测试并发测试