我正在尝试使用 Sublime 中的 Debugger 包来调试 Rust 中的单元测试。我的 sublime 项目中有以下调试器配置:
"debugger_configurations":
[
{
"type": "lldb",
"request": "launch",
"name": "Cargo test",
"cargo": {
"args": [
"test",
"--no-run",
"--lib",
]
},
"program": "${workspaceRoot}/target/debug/projectName",
"args": []
},
],
当我开始调试时,调试器会进入文件中的
main
函数,而不是单元测试。 此链接说在 VSCode 中使用 cargo
而不是 program
(调试器包本质上是 VSCode 调试器到 Sublime 的端口),但是如果没有 program
,调试器包将无法运行,并且似乎会忽略 cargo
完全领域。
我开始认为这是调试器包的实际问题,但无论哪种方式,我想我会先在这里询问,然后再在那里提交问题。我是否配置错误,或者是否有其他方法可以在 Sublime 中调试 Rust 单元测试?
我可以通过添加
"program": "${workspaceRoot}/target/debug/deps/projectName-SHA"
来使事情正常进行,其中 SHA 是从 cargo test --no-run
的输出中找到的。这并不理想,但它有效!