卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章34829本站已运行393

go test -run:如何在测试标识符中指定包

go test -run:如何在测试标识符中指定包

php小编新一为你详细介绍如何在测试标识符中指定包。在Go语言中,我们可以使用"go test -run"命令来运行指定的测试用例。默认情况下,该命令会运行当前目录下所有的测试用例。但是,有时候我们只想运行某个特定的测试包或测试函数,这时候就需要使用"-run"标识符来指定。例如,我们可以使用"go test -run PackageName"来只运行指定的测试包,或者使用"go test -run TestFunctionName"来只运行指定的测试函数。通过这种方式,我们可以更加灵活地运行我们所需要的测试用例,提高测试效率。

问题内容

假设我有两个包 foo/bar 和 foo/baz。 foo/bar 和 foo/baz 都有一个 TestFoo,但我只想运行 foo/bar 的 TestFoo。此外,foo/baz 有一个我想运行的 TestBaz。

是否可以指定仅运行 foo/bar::TestFoo 和 foo/baz::TestBaz 的 go test 命令?

我尝试使用 go test -run 来实现此目的,但看起来运行正则表达式只是按名称过滤,而不是按包标识符过滤:

go 测试-运行“TestFoo|TestBaz”foo/bar foo/baz

理想情况下,我想做这样的事情:

go 测试-运行“foo/bar/TestFoo|foo/baz/TestBaz”foo/bar foo/baz

解决方法

是否可以指定一个仅运行 foo/bar::TestFoo 和 foo/baz::TestBaz 的 go test 命令?

不,这是不可能的。

(包通常应该是独立的,并且从多个测试中测试一个选定的测试根本不是常见的用例。通过 go test 测试多个或所有包就足够好了。/...)

卓越飞翔博客
上一篇: postgres 查询不适用于时间格式“2005-06-10 23:00:00 +0000 UTC”
下一篇: 返回列表
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏