Visual Studio 代码任务参数

Visual Studio Code Task Argument

我正在尝试在 Visual Studio 代码中创建一些任务,以 运行 我的 go 项目中的所有测试。

我通常使用以下命令在命令行上执行测试:

go test ./...

在 Visual Studio 中,我的 tasks.json 代码如下所示:

{
    "version": "0.1.0",
    "command": "go",

    "tasks": [
        {
            "taskName": "build",
            "isBuildCommand": true
        },
        {
            "taskName": "test",
            "isTestCommand": true,
            "args": ["./..."]
        }
    ]
}

因此构建工作正常 (CTRL + SHIFT + B)

但是当我尝试 运行 测试 (CTRL + SHIFT + T) 时出现以下错误:

go: unknown subcommand "./..."

它似乎省略了 "test" 参数,但是当我注释掉 args 时,它 运行 可以正常测试。

有什么想法吗?

这可能是一个错误


VSCode 从 v0.8.0 开始反向参数和任务

这可能是一个在较新版本中仍然存在的错误。从 v0.9.1 开始,我还没有机会进行测试。在 0.9.1 之前,至少有一个黑客通过逆转任务来工作,它是 arg,如下例所示:

{
"version": "0.1.0",
"command": "go",

"tasks": [
    {
        "taskName": "build",
        "isBuildCommand": true
    },
    {
        "taskName": "./...",
        "isTestCommand": true,
        "args": ["test"]
    }
  ]
}

很难相信这种情况一直持续到 v0.8.0,所以可能有一个我还没有发现的首选解决方案。

这是处理类似问题的 link 之前的 post:

Define multiple tasks in VSCode

向下滚动到我的回答以获得更多解释。