【发布时间】:2020-01-17 07:42:28
【问题描述】:
Go 有能力在所有测试之前运行一些代码吗?我知道 Go 提供了 TestMain(),但它的包范围是 func,并且只会在她所在的包中设置和拆除测试。
但我想在所有测试之前运行一些 docker 测试容器,当然,在所有测试完成后将其拆除。
【问题讨论】:
-
没有专门使用 Go 工具,如果这正是你所追求的,请忽略这一点;但是,您可以查看 Makefiles,它可以提供基于 *nix 终端命令的构建脚本系统。我之前曾将其用于集成测试(启动容器,运行 go test,无论测试结果如何都拆除容器)。
-
init()在包中的所有测试之前运行。
标签: go integration-testing go-testing