调试器在节点分流器上启动,而不是在测试文件上启动

Debugger starts on node-tap instead of starting on test file

提问人:Alexandru DuDu 提问时间:11/14/2023 更新时间:11/14/2023 访问量:15

问:

我正在尝试在 docker 中调试一个使用 .我添加了运行命令,配置了调试器以连接到 docker。一切正常,运行测试并连接调试器,但它调试模块而不是测试文件。

我有以下命令:
node-tapnode-tap

"dev:test": "NODE_ENV=test tap --debug --node-arg=--loader=ts-node/esm --node-arg=--no-warnings --node-arg=--experimental-specifier-resolution=node --node-arg=--inspect-brk=0.0.0.0:3034 tests/e2e/component.test.ts --timeout=1200 --jobs=1"

这是launch.json

{
"version": "0.2.0",
"configurations": [
  {
    "name": "Attach to Docker",
    "type": "node",
    "request": "attach",
    "port": 3034,
    "address": "0.0.0.0",
    "localRoot": "${workspaceFolder}",
    "remoteRoot": "/app",
    "restart": true,
    "outFiles": ["${workspaceFolder}/build/**/*.js"],
    "skipFiles": ["<node_internals>/**/*.js", "${workspaceFolder}/node_modules/**/*.js"]
  }
]

}

当我运行时,调试器连接,但我被发送到这个:yarn dev:testenter image description here

此外,当我在测试文件中添加断点时,它说:.

我发现将属性添加到指向我要运行的文件可以解决问题,但它说属性 .
some of the brakpoints could not be setprogramlaunch.jsonis not allowed

我还试图指出 和 中的不同位置,但它也不起作用。localRootremoteRoot

它可能是什么?

节点.js 点按

评论


答:

0赞 Alexandru DuDu 11/14/2023 #1

发现问题。

似乎是in导致了问题。删除它并让它采用默认值后,它起作用了。(据我了解,这是为了)。outFileslaunch.jsonyarn

它仍然在模块中启动调试,但是如果我按下(继续),它会在我设置的下一个断点处停止。tapf5