使用 Mock 和 Interface 进行 Golang 单测

2022-01-08 19:02:05 +08:00
 SpiderXiantang

最近在看 golang-reading-list 总结了一些 Golang 单测的实践

https://vim0.com/post/golang/use_mock_to_test/

1794 次点击
所在节点    分享创造
3 条回复
luozhiyun
2022-01-09 12:39:55 +08:00
我正好也写了篇 <Golang 简洁架构实战 https://www.luozhiyun.com/archives/640> 里面用到了 interface 进行 mock 单测
xing393939
2022-01-10 22:42:54 +08:00
@luozhiyun 你好,看了你的 https://github.com/devYun/go-clean-architecture 我有 2 个问题:
1 ,wire 这种生成代码的方式好像并没有多方便,反而增加了使用这个工具的成本
2 ,api 层->service 层->repo 层都需要传递 context 对象,感觉很多余,而且很多框架也是这样做的,不知道为什么不采用线程全局变量来保存 context
luozhiyun
2022-01-11 10:13:00 +08:00
@xing393939
1. 你觉得多余是因为我里面的实现类太少了,具体你可以尝试去看看 wire 如果做到代码的复用;
2. 要传递 context 而不用全局变量一方面是在代码里面不想耦合全局变量,另一方面就是每一个请求都有自己的 context ,无法共用一个

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/827026

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX