测试覆盖率 基于 goc 的 Golang 代码 VsCode 实时染色方案

Li Yiyang · 2020年09月02日 · 最后由 Li Yiyang 回复于 2020年09月03日 · 3723 次阅读

我们是如何做 go 语言系统测试覆盖率收集的? 中我们发布了 goc

goc 最大的特点之一是可以在运行时分析被测服务的覆盖率。如果有 UI 能实时展示覆盖率变化,会极大提高精准测试的效率。

蚂蚁金服分享过他们的代码实时染色方案,给了我们不少启发。goc 提供的是一个通用的轻量的解决方案,我们觉得如果能在大家常用的 IDE/编辑器中提供这种能力会是一个不错的选择。

这里我们提供了 vscode 插件 - Goc Coverage,可以在插件市场搜索 Goc Coverage,也可以在 https://marketplace.visualstudio.com/items?itemName=lyyyuna.goc 中下载安装。

效果图:

插件

P.S. 该插件使用 goc 本身的 API 接口,任何人都可以基于此开发自己的代码实时染色方案(Goland、vim 插件, 自制前端页面等等),欢迎一起来 goc 贡献代码~

共收到 4 条回复 时间 点赞

goc server 已经启动了在 7777 端口,项目是 go module 配置,在 windows 环境点击 goc coverage 为 on 的时候,提示 cannot read property 'toString' of null

John 回复

又忘记 Windows 平台的兼容性了。麻烦去 repo 里提个 issue 吧~

Li Yiyang 回复

已提,我在 mac 上也试了,运行没问题,也有 goc log 出来了,但是运行代码没有染色😂
通过 goc list 发现是空的,也没有服务注册过来

John 回复

插件本身没有作为一个服务,所以 goc list 上看不到。

我把插件的日志系统完善一下。目前可以确定 Windows 有路径格式兼容问题。

你在微信交流群里吗?GitHub 有二维码,在那交流会方便一点。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册