V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
V2EX  ›  KingHL  ›  全部回复第 3 页 / 共 20 页
回复总数  394
1  2  3  4  5  6  7  8  9  10 ... 20  
@GallifreyCAR 参考我的回复,建一个 sqliite 本地数据库,注入到你的 orm 的 client 上,即可实现数据库替换,单测时会走到真正的数据库操作代码,不需要做数据库返回值的 mock ,数据库读写逻辑本身就是一个需要单测覆盖的部分,不建议直接 mock 掉数据库。
我在团队内推行过单测的落地,我们团队现在单测已经常态化运行,可以和楼主聊一聊:

首先我对“使用了 go 全局变量的框架,没有使用依赖注入,没有使用接口和抽象,导致非常难写单测”这个不是很理解,现在业界成熟单测框架对各类对象的 mock 功能已经非常成熟了,你这个难写是指难以组织单测目录结构、还是难以卸除可用的单测例子。

对于数据库,推荐使用 Sqlite 创建一个本地数据库,在单测环境初始化的时候创建表并插入数据,拒绝引入任何依赖,方便后续单测代码维护。

单测用例也有不同的写法,比如最细粒度的,针对函数/方法级别设计单测用例,这种的好处是单测用例好编写,坏处是单测用例基本没有组织逻辑,全是零散用例;也有把单测当成集成测试手段的,在功能入口处设计编写用例,每个用例都是有具体业务含义的,这种好处是单测用例易于设计,运行成功代表功能可用,但是需要进行大量的下游调用方 mock 和数据组织,维护复杂度高。

单测写完只是第一步,对单测用例的维护是一个非常重的工作,必须前期设计好单测运行流程、单测组织结构、单测用例编写规范,建议从某个独立工程开始试点,真正把单测的编写和维护流程跑通,拿到收益。

单测会反推开发者进行更合理的代码结构拆分,提高代码质量,建议从增量代码开始卡点,增量代码写单测负担小,易于推行,并且效果直观。

单测代码行覆盖率只是一个可用观测指标,都是 70%的行覆盖率,单测真正覆盖了多少业务场景,执行了多少分支流程差别很大,重要的还是用例设计,所以建议 CR 对用例进行 review 。
猜测你这是履历上体现的能力没跟上工作年限,互联网太残酷,稍微慢点跟不上,就会被淘汰,最终突围的十不足一。
@pandachow 这个牛啊,不持有任何固定资产,是在国内吗
2025 年 8 月 12 日
回复了 newboy780 创建的主题 生活 说一说身边人借钱的事情
@popvlovs 你真是挺搞笑的,真把自己当救世主活菩萨了
2025 年 8 月 11 日
回复了 fxt 创建的主题 云计算 请教一下数据库相关的
这个云厂商的价格对比有没有算上人力成本?谁出钱?
2025 年 8 月 11 日
回复了 vulgur 创建的主题 写周报 独立开发周记 130: GPT-5 的表现出乎意料​
工作挺有意思,有没有更全面的介绍?
2025 年 8 月 4 日
回复了 icev5 创建的主题 买买买 大疆 Pocket3 、投影仪、 电动车(两轮的)买哪个好?
都有,目前看电动车用的最多,其他两个,投影仪已经一两年没用了,pocket 一个月用一次吧,没想象的那么爱好记录生活。
感觉挺不要脸的,你要是割已经工作的人的韭菜还好,还没收入的学生你都割。
2025 年 7 月 16 日
回复了 cxz2536818783 创建的主题 杭州 手里 200 个杭州买房现在可以上车吗
喜欢安静的话,郊区良渚文化村 200 够全款了
2025 年 7 月 15 日
回复了 wuhunyu 创建的主题 自行车 自组折叠自行车
@walkbox 大佬有 451 的清单吗
2025 年 7 月 4 日
回复了 dongdongdong 创建的主题 职场话题 转岗还是申请赔偿
前端已经没前途了,转后端相当于公司给你付费学习,为啥不转,多待几个月赔偿钱都赚够了
2025 年 6 月 17 日
回复了 5261 创建的主题 职场话题 拿礼包 or 一人坚守,请君赐我一策
先去面试,能拿到 offer 就走,拿不到就待着,再待够半年就赚回了大礼包的钱。
2025 年 6 月 16 日
回复了 cpalead 创建的主题 生活 修自行车花了 80
上门 80 还冤枉钱,你真是个铁公鸡
@david930 一点没低估,就是这么人傻钱多
你这算好的了,有些知识,比方说分布式一致性算法 raft 、Paxos ,我始终无法彻底理解
2025 年 6 月 11 日
回复了 hmchen16 创建的主题 骑行 通勤自行车求推荐
这么近,买个迪卡侬吧,便宜
2025 年 6 月 6 日
回复了 orikey 创建的主题 职场话题 维持履历一致的重要性
啥方向
1  2  3  4  5  6  7  8  9  10 ... 20  
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1098 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 34ms · UTC 18:23 · PVG 02:23 · LAX 11:23 · JFK 14:23
♥ Do have faith in what you're doing.