Golang 中如何快速进行测试

2018-02-02 18:08:55 +08:00
 eloah

之前主要是写 Python 的,Golang 写的时间不久,问题可能有些小白,请各位大佬不要见怪,噗

在 Python 中,比如我在 a.py 里实现一个功能函数,我可以直接在 a.py 里写一个调用并运行 a.py 来测试结果,或者是直接进入交互环境 import 进来然后测试

但是在 Golang 里面,强制规定了我只能在一堆 main 里面进行调用,每次测试都有点麻烦,请问一下,各位大佬遇到这种情况是怎么解决的呢?

2082 次点击
所在节点    Go 编程语言
7 条回复
BlankIdentifier
2018-02-02 18:17:29 +08:00
awesome.go

``` go
func Foo() {
// ...
}
```

awesome_test.go

``` go
func TestFoo(t *testing.T) {
Foo()
}
```

``` sh
go test -run Foo
```
jeremaihloo
2018-02-02 18:22:29 +08:00
单元测试呀,就一楼正解

你 Python 也是要写单元测试的,简单点的用 doctest 就行,不可能都手工测试吧
16779242
2018-02-02 18:32:40 +08:00
golang 单元测试,google 一下你就懂了,入手非常简单,网上案例也详细
applehater
2018-02-02 20:37:54 +08:00
编辑器安装 gotests 插件就可以快速生成测试文件,然后就是填测试用例。
panlilu
2018-02-03 01:26:45 +08:00
用 vs code,鼠标点点就能单元测试。。
eloah
2018-02-03 10:07:33 +08:00
非常感谢上面各位
jiazhoulvke
2018-02-03 16:03:59 +08:00
简单的测试直接用 go 自带的 testing 就可以了,复杂一点用第三方的库,比如 https://github.com/smartystreets/goconvey

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

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

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

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

© 2021 V2EX