【问题标题】:Is there a best practice to setup golang unit test parameters?是否有设置 golang 单元测试参数的最佳实践?
【发布时间】:2022-01-12 04:13:27
【问题描述】:

我的单元测试需要一个远程服务器地址来启动。服务器地址不固定。

如果我将地址放在我的 .go 测试源中,我会在每次运行时更改它们。

如果我将它们放在系统环境变量中,在 VSCode GUI 中更改它非常不方便。 (我的意思是我将在 VSCode 菜单中开始测试。)

我知道我可以在运行或调试我的程序之前将环境变量放在 launch.json 中进行设置。但在这里我只想运行单元测试。

有没有不重启VSCode的情况下更改参数的好方法?

【问题讨论】:

    标签: unit-testing go visual-studio-code


    【解决方案1】:

    您可以将以下 sn-ps 添加到 VSCode settings.json 以指定仅用于 go test 运行的环境变量:

    直接定义变量:

    "go.testEnvVars": {
      "MY_VAR": "my value"
    },
    

    或者使用包含MY_VAR="my value"格式的环境变量的专用文件(在我的示例中称为test.env,在项目工作区的根目录中),每行一个变量:

    "go.testEnvFile": "${workspaceFolder}/test.env",
    

    还要注意,单元测试(顾名思义,它们测试一个代码单元)通常不应依赖于任何外部服务或资源。除了被测逻辑之外的所有东西都应该以模拟的形式提供。

    【讨论】:

    • 非常感谢,它有效。
    猜你喜欢
    • 1970-01-01
    • 2016-08-09
    • 1970-01-01
    • 1970-01-01
    • 2016-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多