go 语言 test 太丑了怎么破?

2019-09-06 13:39:05 +08:00
 Hanggi
习惯用 jest 之后给 go 语言写测试,被丑吐了,怎么破。

有没有精致的,类 jest 的测试框架?
6454 次点击
所在节点    Go 编程语言
19 条回复
virusdefender
2019-09-06 13:50:59 +08:00
boob
2019-09-06 15:07:59 +08:00
jest 有 mock 框架吗
wd
2019-09-06 15:13:09 +08:00
具体说说是哪里觉得不如 jest ...
Hanggi
2019-09-06 15:43:14 +08:00
@wd 没说 go test 不好,你两个都跑一遍,看看测试结果的友好度。
reus
2019-09-06 17:43:42 +08:00
js 不好用吗?为什么要用 go ?
为什么不用 rust ?编译过了就行了,测试都不用写
丑还用,自寻烦恼啊?
lidfather
2019-09-06 18:03:48 +08:00
@reus
js 不能系统编程
go 可以
rust 难用,生态不行
什么语言能不写测试?
reus
2019-09-06 18:06:40 +08:00
@lidfather rust 啊,程序有 bug 你就不能通过编译啊,不用写测试啊。认为 rust 难用,说明你能力低下!
AngelCriss
2019-09-06 18:14:56 +08:00
好了楼上已经 block 了
holyghost
2019-09-06 18:42:39 +08:00
http://goconvey.co/
加上一楼说的 suite 配合使用
via
2019-09-06 19:16:36 +08:00
@AngelCriss 哈哈,那位老哥句句雷人啊
cholerae
2019-09-06 19:35:07 +08:00
@reus “如何激怒 rust 程序员”
pursuer
2019-09-06 22:30:08 +08:00
@reus 这句话总感觉像在黑 rust,rust 保障的是内存安全问题,测试不只是测试内存安全问题啊。
话说我记得你也是用 go 造轮子的呀,说明对你来说还是 go 顺手吧。
azuginnen
2019-09-06 22:33:31 +08:00
@virusdefender 这感觉还是 python unittest 或者 nose 阶段,pytest 已经可以重写 assert,到哪里都只要 assert 正常语句就行了。
wisan
2019-09-07 08:47:59 +08:00
@reus 你们测试只测内存泄漏吗?
virusdefender
2019-09-07 09:18:33 +08:00
@azuginnen 其实没太懂,到哪里都只要 assert 正常语句就行了 是什么意思啊,给个 demo ?我写代码一直都是

assert.True() assert.Equal() 这样用的
azuginnen
2019-09-07 09:39:48 +08:00
@virusdefender 是指 pytest 实现了。

比如

assert a == 3
assert "a" in [ "a", "b" , "c" ]
assert a is True
admirez
2019-09-07 11:19:51 +08:00
做几年测试开发人员,再来评论
menyakun
2019-09-07 18:48:12 +08:00
测试写多了就知道最关键的是 mock,而不是好不好看之类的玩意儿
ParadiseDS
2019-09-08 06:30:02 +08:00
@Hanggi go test 灵活性很高,和普通代码几乎没区别,测试结果友好度基本完全看你怎么写
可以看看 gotests 之类的工具生成的 table driven test,个人用下来感觉可读性挺好的

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

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

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

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

© 2021 V2EX