golang 对私有函数进行单元测试的实例

作者:郭帅杰 时间:2024-05-13 10:43:54 

在待测试的私有函数所在的包内,新建一个xx_test.go文件

书写方式如下:


import (
"github.com/stretchr/testify/assert"
"testing"
)
var XXFunc = yourPrivateFunc
func TestXXFunc(t *testing.T) {
ret, ... := XXFunc(...)
assert.Equal(t, ret, ...)
}

就可以了~

补充:golang test使用(简单的单元测试)

1、测试单个文件,一定要带上被测试的原文件


go test -v  wechat_test.go wechat.go

2、测试单个方法


go test -v wechat_test.go -test.run TestRefreshAccessToken

如果不指定文件名,会将当前目录的所有test方法进行测试

举例:


package main
import (
"fmt"
"testing"
)

func TestFmt1(t *testing.T) {//1 方法必须传入testing.T 2 方法名必须是以Test开头,驼峰命名
fmt.Println("test1")
}
func TestFmt2(t *testing.T) {
fmt.Println("test2")
}

go代码保存为 t_test.go //必须以_test.go作为结束

在此代码同级目录执行 :

go test -v t_test.go -test.run TestFmt2 会调用TestFmt2

如果执行:

go test -v t_test.go -test.run TestFmt 会调用两个函数进行测试,它是正则匹配的

以上为个人经验,希望能给大家一个参考,也希望大家多多支持asp之家。如有错误或未考虑完全的地方,望不吝赐教。

来源:https://blog.csdn.net/IGUOSJ/article/details/108342625

标签:golang,函数,单元测试
0
投稿

猜你喜欢

  • Java中使用正则表达式的一个简单例子及常用正则分享

    2023-05-06 09:03:16
  • windows10在visual studio2019下配置使用openCV4.3.0

    2021-10-23 12:23:31
  • MySQL如何查询Binlog 生成时间

    2024-01-19 23:34:57
  • Mysql环境变量配置方式

    2024-01-25 22:41:30
  • MySQL GTID主备不一致的修复方案

    2024-01-15 21:26:16
  • python3 QT5 端口转发工具两种场景分析

    2023-04-03 10:34:46
  • 安装MySQL5.0后出现1607异常的解决办法

    2009-02-26 15:52:00
  • python如何实现数组元素两两相加

    2023-02-21 04:39:46
  • asp 过滤尖括号内所有内容的正则代码

    2011-04-03 10:40:00
  • SQL Server误区30日谈 第1天 正在运行的事务在服务器故障转移后继续执行

    2024-01-14 22:53:03
  • 浅谈Python脚本开头及导包注释自动添加方法

    2021-04-22 06:21:22
  • Django+zTree构建组织架构树的方法

    2023-08-13 06:17:54
  • node实现mock-plugin中间件的方法

    2024-05-13 10:05:59
  • 请不要重复犯我在学习Python和Linux系统上的错误

    2023-05-05 05:01:31
  • python多线程超详细详解

    2023-08-09 09:10:23
  • python select.select模块通信全过程解析

    2022-05-23 13:13:10
  • CSS图片代码效果汇总

    2008-09-04 12:14:00
  • bootstrap手风琴制作方法详解

    2024-04-10 16:20:11
  • Django使用Mysql数据库已经存在的数据表方法

    2023-07-21 15:24:59
  • Python中实现常量(Const)功能

    2021-01-27 17:16:54
  • asp之家 网络编程 m.aspxhome.com