Go

如何在指定文件中运行测试用例?

发布于 2021-02-01 11:18:23

我的程序包测试用例分散在多个文件中,如果运行,go test <package_name>它将运行程序包中的所有测试用例。

虽然没有必要全部运行。有没有一种方法指定go test要运行的文件,使其仅运行文件中定义的测试用例?

关注者
0
被浏览
153
1 个回答
  • 面试哥
    面试哥 2021-02-01
    为面试而生,有面试问题,就找面试哥。

    有两种方法。一种简单的方法是使用该-run标志并提供与您要运行的测试名称匹配的模式。

    例:

    $ go test -run NameOfTest
    

    有关更多信息,请参阅文档

    另一种方法是命名包含您要运行的测试的特定文件:

    $ go test foo_test.go
    

    但是有一个陷阱。如果满足以下条件,则效果很好:

    • foo.gopackage foo
    • foo_test.gopackage foo_test并导入“ foo”。

    如果foo_test.gofoo.go是相同的软件包(常见情况),则必须命名build所需的所有其他文件foo_test。在此示例中,它将是:

    $ go test foo_test.go foo.go
    

    我建议使用该-run模式。或者,在可能的情况下,始终运行所有程序包测试。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看