英文:
Visual Studio Code Task Argument
问题
我正在尝试在Visual Studio Code中创建一些任务,以便运行我的Go项目中的所有测试。
我通常在命令行中使用以下命令来执行测试:
go test ./...
在Visual Studio Code中,我的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时,go test可以正常运行。
有什么想法吗?
英文:
I'm trying to create some tasks in Visual Studio Code to run all the tests in my go project.
I usually execute the tests on the command line using:
go test ./...
In Visual Studio Code my tasks.json looks like this:
{
"version": "0.1.0",
"command": "go",
"tasks": [
{
"taskName": "build",
"isBuildCommand": true
},
{
"taskName": "test",
"isTestCommand": true,
"args": ["./..."]
}
]
}
So Build works fine (CTRL + SHIFT + B)
But when I try to run the tests (CTRL + SHIFT + T) the following error occurs:
go: unknown subcommand "./..."
It seems to be omitting the "test" param, but when I comment out the args it runs go test fine.
Any ideas?
答案1
得分: 0
这可能是一个错误
VSCode Reverse Args and Task as of v0.8.0
这可能是一个仍然存在于较新版本中的错误。截至v0.9.1,我还没有机会进行测试。在0.9.1之前,至少有一种方法可以通过反转任务及其参数来解决,如下面的示例所示:
{
"version": "0.1.0",
"command": "go",
"tasks": [
{
"taskName": "build",
"isBuildCommand": true
},
{
"taskName": "./...",
"isTestCommand": true,
"args": ["test"]
}
]
}
很难相信这个问题在v0.8.0之前仍然存在,所以可能存在一种我尚未发现的更好的解决方案。
这是一个处理类似问题的先前帖子的链接:
向下滚动到我的答案以获取更多解释。
英文:
THIS MAY BE A BUG
VSCode Reverse Args and Task as of v0.8.0
This may be a bug that still persists in the newer versions. As of v0.9.1 I have not had a chance to test. Prior to 0.9.1 at least one hack worked by reversing the task and it's arg as in the following example:
{
"version": "0.1.0",
"command": "go",
"tasks": [
{
"taskName": "build",
"isBuildCommand": true
},
{
"taskName": "./...",
"isTestCommand": true,
"args": ["test"]
}
]
}
It's hard to believe that this has still persisted until v0.8.0 so there may be a preferred solution that I have not discovered.
Here is a link to a prior post that deals with a similar issue:
Define multiple tasks in VSCode
Scroll down to my answer for more explanation.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论