首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
解析 Golang 测试
ag9920
创建于2022-08-19
订阅专栏
Golang 生态中对于测试能力的支持多种多样,这个专栏我们希望覆盖开源社区大部分常见的【测试实践】,解析用法,原理。帮助大家更好的理解【什么是单测】,【怎么写单测】。
等 54 人订阅
共12篇文章
创建于2022-08-19
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
解析 Golang 测试(12)- 字节开源的 mock 利器 mockey
mock 在单元测试中的非常重要,广义的 mock 本质是对三方依赖构建一个平替(Test Double),可以是完整接口的模拟实现(fake),也可以是对局部接口的替换。今天我们来看看 mockey
解析 Golang 测试(11)- 模糊测试
今天我们继续【解析 Golang 测试】系列,带大家一起了解一下基于 Golang 使用模糊测试的那些事。
解析 Golang 测试(10)- 什么是好的单测
这次我们从方法,思路方面聊聊怎样写好单测,什么是好的单测,以及覆盖率这件事为什么没有意义。好的单测 >没有单测 >虚假繁荣的单测。
解析 Golang 测试(9)- 一篇文章搞懂 testify
今天我们的主角是【testify】,相信很多 Gophers 都或多或少用过。个人使用体会上来说,testify 几乎是除了官方的标准库,gomock 之外,使用最多的测试工具库了。
解析 Golang 测试(8)- gomonkey 实战
今天我们的主角是 gomonkey,一个用来做 monkey patching 的测试库。目标是让用户在单元测试中低成本的完成打桩,从而将精力聚焦于业务功能的开发。
解析 Golang 测试(7)- 如何针对 Redis 进行 Fake 测试
上篇中,我们学习了 MySQL Fake 的方式,这样可以让我们早单测阶段就暴露 SQL 语句可能的问题。今天我们来看看针对 Redis 做 Fake 的经典方案:Miniredis。
解析 Golang 测试(6)- 如何针对 MySQL 进行 Fake 测试
前面我们了解了什么是 Fake 和 Mock,并学习了对 sql 进行 Mock 的经典driver 库 `sqlmock`,今天我们则是来看一看,针对 MySQL 我们有什么 Fake 的选项。
解析 Golang 测试(5)- MySQL 经典 mock driver—— sqlmock
go-sqlmock 本质是实现了 sql/driver 接口的 mock 库,它的设计目标是支持在测试中,模拟任何 sql driver 的行为,而不需要一个真正数据库连接,这对 TDD 很有帮助。
解析 Golang 测试(4)- 一篇文章教你分清 Mock,Stub,Fake
日常开发中,我们经常遇到各种【替代对象】的叫法,mock,stub,fake,dummy,很多时候区分不开到底哪个是哪个,今天这篇文章,我们就来看看这些概念,以及 Test Double 如何区分。
解析 Golang 测试(3)- goconvey 实战
goconvey 是一套单元测试框架,比原生的go testing 好用很多。goconvey提供了很多好用的功能,如 多层级嵌套单测,丰富的断言,清晰的单测结果,支持原生go test。
解析 Golang 测试(2)- gomock
在日常开发中,我们经常需要写单测来验证代码逻辑是否符合预期,如果你的函数只存在本地依赖,或是纯计算型的逻辑,写单测的成本并不高。
解析 Golang 测试(1)- 原生支持
单测和 benchmark 相关的代码,的确不会真正产生业务价值,他们的存在,是为了让你更好的理解自己的系统,对代码更有自信,相关的逻辑更加清晰。今天我们先来看看 Golang 原生提供的支持。