如何通过VS Code的launch.json配置运行单个Go测试?
如何通过VS Code的launch.json配置运行单个Go测试?
当然可以,你之前的配置问题在于缺少Go测试命令的-run参数,且mode设置不符合测试场景。以下是修正后的可用配置:
{ "name": "Go: 运行单个测试", "type": "go", "request": "launch", "mode": "test", "program": "${file}", "args": [ "-run", "^TestDoThing$" ] }
关键配置说明:
- mode: "test":明确指定以测试模式启动Delve,替代默认的"auto"模式,确保工具执行测试逻辑而非直接运行程序。
- "-run" 参数:这是Go
test命令的核心筛选参数,用于通过正则表达式指定要运行的测试函数。你之前的配置仅写入正则表达式,未指定-run标志,导致参数未被识别。 - 精确匹配正则:
^TestDoThing$确保仅匹配完全名为TestDoThing的测试函数,避免误运行TestDoThingWithArgs这类名称相似的测试。
额外提示:
- 确保当前打开的文件是测试文件(如
xxx_test.go),${file}会自动指向该文件,仅运行此文件内匹配的测试。 - 若需运行整个包内的单个测试,可将
program改为包路径,例如${workspaceFolder}/internal/utils,无需打开具体测试文件即可指定测试名运行。
内容的提问来源于stack exchange,提问作者CorkiMain
相关产品推荐
相关产品推荐

