在 Go 测试中获取命令行参数
使用 go test 运行测试时,main 函数不会被执行。这就提出了如何访问测试用例中的命令行参数的问题。
常见的方法是使用 flags 包并手动检查每个测试或函数中的参数。然而,随着测试数量的增加,这种方法可能会变得乏味且容易出错。
相反,可以使用环境变量或初始化函数来访问测试中的命令行参数。
环境变量
环境变量提供了一种将配置数据传递到测试环境的便捷方法。要在测试中访问环境变量,只需使用 os.Getenv 函数:
envSetting := os.Getenv("TEST_ENV")
初始化函数
或者,您可以定义一个初始化函数来设置基于命令行参数的全局变量。 init() 函数在任何测试用例之前执行,使其非常适合初始化目的:
func init() { flags.Parse() myEnv = *envFlag }
通过利用这些技术,您可以有效地访问 Go 测试中的命令行参数并保持测试和主函数之间的分离功能。
以上是如何在 Go 测试中访问命令行参数?的详细内容。更多信息请关注PHP中文网其他相关文章!