Golang实践录:测试框架
这篇集中记录一下测试相关的内容。
背景
创建工程库代码,方便重用。重用方式可使用函数,也可直接引用文件。
完成函数,可在 main 函数中调用进行测试。也可以使用 test 框架进行。
在大型项目中,可以用 test 进行测试更方便,即不影响业务代码,也保留测试代码。
结构
测试文件形式为 <文件名>_test.go
,源码文件不能以_test.go
结尾。
引用testing
包。有t.Logf
等函数。
测试用例使用TestFoo
、TestBar
的形式。
同一个目录,可以有多个测试文件,同一测试文件,可以有多个测试用例。但注意,不能出现同名函数。
测试文件与实际源码文件名称,可同可不同。
使用
简单使用:
go test
结果以 PASS 或 FAIL 等表示。
输出详细日志:
go test -v
上述命令会运行该目录下所有测试文件的所有测试用例。
为方便、简单测试,可指定测试文件和测试用例。如:
go test -v -run TestSleep
(注:当测试文件包含其它包时,指定测试文件,似乎不成功)
小结
Golang 提供的测试框架,可以方便地对封装的工具函数进行测试。
对于实现简单功能的模块而言,可以使用测试框架,也可以编译为二进制,后者在使用上较方便。
Golang实践录:测试框架相关推荐
- Golang实践录:命令行cobra库实例再三优化
本文是上一文章<Golang实践录:命令行cobra库实例优化> 的优化,主要的子命令的业务实现的整理. 起因 上一版本实现的方式,还是有点不满意,格式也不对齐,重要的是,似乎不是正规的方 ...
- Golang实践录:命令行cobra库实例优化
本文上一文章<Golang实践录:命令行cobra库实例> 的优化,主要的子命令的业务实现的整理. 起因 旧版本中,每个子命令的入口函数,均需一一判断传入参数,并调用对应的业务实现函数,编 ...
- 3_01_GLib库入门与实践_测试框架
简介 GLib提供了一套测试框架,可以帮助我们实现自动测试,而且还能生成报告,下面简单介绍一下这个框架的基本使用方法. 数据结构 enum GTestFileType enum GTestTrapFl ...
- Golang实践录:使用gin框架实现转发功能:一些负载均衡算法的实现
近段时间需要实现一个转发 post 请求到指定后端服务的小工具,由于一直想学习 gin 框架,所以就使用这个框架进行尝试,预计会产生几篇文章.本文研究一些负载均衡算法的实现. 概述 本文实现的负载均衡 ...
- Golang实践录:使用gin框架实现转发功能:利用nginx转发
近段时间需要实现一个转发 post 请求到指定后端服务的小工具,由于一直想学习 gin 框架,所以就使用这个框架进行尝试,预计会产生几篇文章.本文研究如何利用 nginx 容器和后端服务进行转发工具的 ...
- Golang实践录:使用gin框架实现转发功能:管理后端服务
近段时间需要实现一个转发 post 请求到指定后端服务的小工具,由于一直想学习 gin 框架,所以就使用这个框架进行尝试,预计会产生几篇文章.本文研究如何管理后端服务. 思路 在启动 gin 服务前, ...
- Golang实践录:使用gin框架实现转发功能:上传文件并转
近段时间需要实现一个转发 post 请求到指定后端服务的小工具,由于一直想学习 gin 框架,所以就使用这个框架进行尝试,预计会产生几篇文章.本文先研究如何在 gin 框架中实现上传和转发功能. 问题 ...
- go 获得 mysql 实际运行 SQL,Golang实践录:一个数据库迁移的代码记录
实现一个数据库迁移的案子.有些知识点值得记录. 技术框架 github.com/go-xorm/xorm:数据库操作 github.com/denisenkom/go-mssqldb:sqlserve ...
- Golang实践录:调用C++函数
趁着五一放假,趁着有时间,把欠的一些技术集中研究研究,写写文章,好给自己一个交待. 本文介绍如何在 Golang 中调用 C++ 函数. 起因 因工作需求,需要将一个工具由终端行的运行方式迁移到 we ...
最新文章
- mysql中的float_mysql里float是什么东西
- 问一下大家个3D问题:旋转和缩放以及平移中如何插值矩阵?
- IMAP和POP3的相关知识与区别
- 使用连接来代替in和not in(使用外连接技巧)
- 超详细的Git提交规范引入指南
- python网页开发实现本地上传_树莓派 python 如何将本地文件上传到指定的服务器页面上...
- table列最小宽度 vue_Vue组件设计 - 先别管view
- PM_敏捷开发 Scrum vs Kanban,如何选择?
- Visio连接线的箭头如何变为直线、双箭头;直线转换为箭头
- 柳传志回应“联想5G投票事件”:不要罔顾事实挑拨离间
- 服务器双路供电原理,双路电源上电顺序控制电路原理图
- 拼多多“百亿农研”开辟发展新路径
- html 开源 折线图,ECharts折线图(一)
- 安慰奶牛 C++ kruskal
- python使用XPATH爬取电影票房
- 怎样免费翻译整篇英文Word文档
- Facebook、中国BAT均落选,高盛全球“漂亮50”有哪些潜力股?
- ABAP 之ALV展示及下钻弹窗数据页面
- 【骑车助手】安卓应用详细信息
- 阿里面试题java,学习路线+知识点梳理