尝试minitest
在非 Rails ruby 应用程序上调试测试,我在launch.json
文件中有以下配置:
{
"name": "Debug a rake task",
"type": "Ruby",
"request": "launch",
"useBundler": true,
"cwd": "${workspaceRoot}",
"showDebuggerOutput": true,
"pathToBundler": "/home/user/.rbenv/versions/2.5.5/bin/bundle",
"pathToRDebugIDE": "/home/user/.rbenv/versions/2.5.5/bin/rdebug-ide",
"program": "/home/user/.rbenv/versions/2.5.5/bin/rake",
"args": [
"test",
],
"env": {
"LOG_LEVEL": "debug",
"TEST": "test_file.rb",
"TESTOPTS": "--name=test_name",
}
},
即使Rakefile
命中了 的断点,test_file.rb
也没有命中应用程序的断点和断点。
我怀疑这可能是因为 rake 任务被称为单独的进程,但我不知道如何处理这种情况。如何使调试器在应用程序和测试文件的断点处停止?
PS:我现在用byebug
;但是,它不会取代基于 IDE 的调试器。