在不同的 go 版本中使用 ginkgo
php小编百草为您介绍如何在不同的Go版本中使用Ginkgo。Ginkgo是一个强大的Go语言测试框架,它提供了丰富的特性和灵活的语法,使得编写和运行测试变得更加简单高效。然而,在不同的Go版本中,由于语法和API的变化,可能会导致使用Ginkgo时遇到一些问题。本文将为您提供解决方案,帮助您在各个Go版本中成功使用Ginkgo,让您的测试工作更加顺畅。无论您是新手还是有经验的开发者,都能从本文中获得实用的技巧和建议。
问题内容
我正在使用 go 的多个版本,如本文档 https://go.dev/doc/manage-install 中所述
go install golang.org/dl/go1.10.7@latest
go1.10.7 download
我也在使用 ginkgo,我是这样安装的:(基于 https://onsi.github.io/ginkgo/#installing-ginkgo)
go install github.com/onsi/ginkgo/v2/ginkgo@latest
我可以像这样运行 ginkgo 测试套件:
ginkgo ./...
但是,这使用了我的主要 go 版本。我想用 ginkgo 来测试另一个版本的 go。目前,我能做的最好的事情就是使用 go test
运行 ginkgo 测试
go1.10.7 test ./...
我可以让 nginkgo
使用不同版本的 go 进行测试吗?
解决方法
根据他们的源代码,他们只使用命令 ”go”
,所以你的选择是:
- 暂时将
go
重命名为go.bak
,然后将go.10.7
重命名为go
(例如使用mv
) - 打开拉取请求以允许支持覆盖 go 可执行文件的路径(例如通过环境变量)
- 做你现在正在做的事情
来源:https://github.com/onsi /ginkgo/blob/master/ginkgo/internal/compile.go
相关代码:
func CompileSuite(suite TestSuite, goFlagsConfig types.GoFlagsConfig) TestSuite {
...
cmd := exec.Command("go", args...)
以上就是在不同的 go 版本中使用 ginkgo的详细内容,更多请关注编程网其它相关文章!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341