Open liusheng opened 3 years ago
curl -L https://dl.google.com/go/go1.15.2.linux-amd64.tar.gz | tar zx -C /usr/local/ export GOROOT=/usr/local/go export GOPATH=/root/go export PATH=$GOROOT/bin:$GOPATH/bin:$PATH:
通过godoc命令可以快速查看一个go项目的文档
godoc --http :6060
然后浏览器打开http://localhost:6060/pkg
go list命令可以用来了列出go环境的packages,例如:
go list github.com/gophercloud/gophercloud/acceptance/...
上面命令可以列出gophercloud的acceptance目录下面的所有包。
一个在线运行,以及go代码分享有用的网站:
https://play.golang.org/
使用dlv test命令来调试gophercloud的 acceptance test:
dlv test 'github.com/gophercloud/gophercloud/acceptance/openstack/orchestration/v1' --build-flags "-v -tags 'fixtures acceptance'" --log --output v1.test
也可以加上-- -test.run TestAAA的方式来只调试某一个用例
-- -test.run TestAAA
也可以通过下面的命令来先编译出一个包的test二进制文件:
go test -v -tags "fixtures acceptance" 'github.com/gophercloud/gophercloud/acceptance/openstack/orchestration/v1' -c
调试telefonica provider的方法:
TF_ACC=1 dlv test 'github.com/huawei-clouds/terraform-provider-telefonicaopencloud/telefonicaopencloud/' -- -test.run TestAccComputeV2FloatingIP_importBasic -test.v=1
使用下面的命令设置断点:
(dlv) b stackevents_test.go:30
敲c会执行到断点处停下
c
使用p命令用于显示变量的值:
p
(dlv) p err
使用delve调试的时候,建议先进行设置,可以退通过下面的命令来查看以及设置配置项:
(dlv) config -list aliases map[] substitute-path [] max-string-len 20000 max-array-values <not defined> show-location-expr false
设置字符串长度上限以及数组长度上限:
(dlv) config max-string-len 10000 (dlv) config max-array-values 1000 (dlv) config -save
上面的设置可以避免在打印变量的时候,变量的内容显示不全的问题。
huawei-telefonica-provider调试命令:
TF_ACC=1 dlv test 'github.com/huawei-clouds/terraform-provider-telefonicaopencloud/telefonicaopencloud/' -- -test.run TestAccComputeV2Instance_basic -test.v=1
在使用dlv调试的时候,很多时候字符串十一uint8数组的形式存放的,不利于查看内容,可以使用p string(strVar)的方式来查看内容。
uint8
p string(strVar)
go test 一次指定多个用例执行:
OS_DEBUG=1 TF_LOG=debug TF_ACC=1 go test ./huaweicloud/ -v -timeout 180m -run 'TestAccDataSourceAWSS3BucketObject_allParams|TestAccVpcPeeringConnectionV2DataSource_basic|TestAccVpcRouteIdsV2DataSource_basic'
通过godoc命令可以快速查看一个go项目的文档
然后浏览器打开http://localhost:6060/pkg
go list命令可以用来了列出go环境的packages,例如:
上面命令可以列出gophercloud的acceptance目录下面的所有包。
一个在线运行,以及go代码分享有用的网站:
使用dlv test命令来调试gophercloud的 acceptance test:
也可以加上
-- -test.run TestAAA
的方式来只调试某一个用例也可以通过下面的命令来先编译出一个包的test二进制文件:
调试telefonica provider的方法:
使用下面的命令设置断点:
敲
c
会执行到断点处停下使用
p
命令用于显示变量的值:使用delve调试的时候,建议先进行设置,可以退通过下面的命令来查看以及设置配置项:
设置字符串长度上限以及数组长度上限:
上面的设置可以避免在打印变量的时候,变量的内容显示不全的问题。
huawei-telefonica-provider调试命令:
在使用dlv调试的时候,很多时候字符串十一
uint8
数组的形式存放的,不利于查看内容,可以使用p string(strVar)
的方式来查看内容。go test 一次指定多个用例执行: