首页 >后端开发 >Golang >如何选择性地测试 Go 包并跳过特定目录?

如何选择性地测试 Go 包并跳过特定目录?

Linda Hamilton
Linda Hamilton原创
2024-12-06 17:27:12567浏览

How Can I Selectively Test Go Packages and Skip Specific Directories?

测试包的子集

Go 的测试框架在选择要测试的包时提供了灵活性。通过利用 go test 命令,用户可以指定单个包或利用 shell 命令来包含多个包。

跳过特定目录

要从测试中排除子目录,有几种方法可用:

  1. 单独包调用:单独运行每个要测试的包的 go test 命令,不包括要跳过的目录。
  2. 基于模式的调用: 将模式与 go test 命令一起使用以包含特定包,同时排除其他包。例如, go test import/path/to/mypackage import/path/to/mypackage/other import/path/to/mypackage/net 将测试三个指定的包。
  3. 条件跳过: 利用 shell 命令,例如 go list | grep -vdirectoriesToSkip 生成要测试的包列表,并排除任何标记为跳过的目录。

根据测试条件跳过:

测试时可能很耗时或不必要,可以使用testing.Short() 有条件地跳过它们t.Skip().

根据 -short 标志有条件地跳过:

  • 运行 go test -short import/path/to/mypackage/... 或 go test -short ./... 在 mypackage 目录中。
  • 指定测试本身中要触发的自定义条件跳过。

这种方法可以通过仅执行那些认为必要的测试来实现高效测试。

以上是如何选择性地测试 Go 包并跳过特定目录?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn