vscode打造golang开发环境以及golang的debug单元测试

一.前言

      vscode使用的顺手了,真的很难再换到沉重的ide去。但是vscodedebug确实比不过老牌ide自带的,因此只能靠咱们自己去安装了。。

二. 正文

1.vscode的扩展

1)搜索扩展go,安装
    (2)ctrl_cammand+P ,输入go:install,翻墙下载插件
    (3)如果设置了go mod方式,那么vscode一次只能打开一个项目文件夹。不然会报错:
        could not import xx $GOROOT
        could not import xx $GOPATH4)复制忽略$符号问题:
        打开设置,搜索wordSeparators,去掉正则匹配中的$
    (5)查看每行代码的git提交人,提交记录
        安装扩展:git history和 gitLens
    (6)vscode页面预览以及打开多个窗口
        1)打开设置,搜索Enable PreView,去掉勾选
        2)settings新增设置:"workbench.editor.showTabs":true7) vscode调试go代码 : 安装delve
        参考:https://www.jianshu.com/p/d8e09faf498c8)理解goroot,gopath以及go mod
        参考:https://blog.csdn.net/zkyapple/article/details/1121082839)vscode收缩文件中所有代码,打开收缩
        折叠代码块快捷键
        command + k + 0 #长按command
        展开代码块快捷键
        command + k + j #长按command10)vscode关闭go的自动格式化代码
    (1)打开设置,搜索: format on save
    (2)找到go部分,打开setting,会自动配置一些字段,全部设置为false即可

2.vscode的单元测试

1) 找到要调用的方法文件同级目录,比如要调用的文件是xxx.go
 (2)新建测试文件xxx_test.go,保持package一致.且方法名需要Test开头
 (3)主要用到golang的testing包。伪代码如下
 
 package xx

run test | debug test
func Testxx(t *testing.T) {
	//初始化配置的代码。从main.go中复制即可,保证项目可以加载到配置,比如链接mysql等
	//自己构造参数,调用方法即可
	err : = xxxx(自己构造的参数)

}4)此时我们鼠标点击方法名上面的run test即可。
 
 (5)run test的时候无法fmt打印?
     "go.testFlags": ["-v"]
    设置加上之后,我们的format等打印就会出来了

3 .vscode的debug

1)首先要知道自己的cpu架构,目前mac主要分为amd和arm的。
博主是m1芯片,也就是arm的,因此要安装arm 版本的golang。

(2)golang 版本大于1.6 (貌似之前的版本debug有点问题)

(3)安装dlv 
	go get -u github.com/go-delve/delve/cmd/dlv
(4) 点击方法名上面的 debug test ,会要求创建launch.json,同意即可。
主要要选择go。使用vscode默认生成的json即可
{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch Package",
            "type": "go",
            "request": "launch",
            "mode": "auto",
            "program": "${fileDirname}"
        }
    ]
}5) 打断点,执行debug test

(6) 报错信息
	报错:could not launch process: can not run under Rosetta, check that the installed build of
 Go is right for your CPU architecture Process exiting with code: 1

方案:
1.下载golang 的arm ,且版本要大于1.6
2.重新安装dlv (错误原因就在于,使用的是之前老版本的dlv,重新下载即可)
    go get -u github.com/go-delve/delve/cmd/dlv

       基本上按照这些步骤执行下来就可以愉快的使用vscodedebug功能了。不能不说真的强无敌,每一步的变量值都能显示出来,调试神器啊。不禁想起当年靠打印调试程序的日子,真特么青涩。

end

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

铁柱同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值