由于我还没有解决我的另一个问题Randomly failing tests jest and supertest Node.js,我决定使用VS Code
调试器。我原以为这会很简单,但在我在某行设置断点并运行调试器后,我发现断点图标在不同的地方,代码就停在那里。
我的launch.json文件:
{
"type": "node",
"request": "launch",
"name": "Jest Current File",
"program": "${workspaceFolder}/node_modules/jest/bin/jest",
"args": ["${relativeFile}"]
}
字符串
前:
后:
知道为什么会这样吗
6条答案
按热度按时间nukf8bse1#
通常在一些IDE中,断点固定在行号上。因此,如果在设置断点后该文件中的代码发生更改,则断点不会移动。所以在做改变的时候,
mitkmikd2#
我用的是纯摩卡,所以可能有点不同。但我以前注意到过这一点,我会在then()中设置一个内联断点(cmd+shift+p - search内联断点)
anhgbhbe3#
在
.then()
之后使用.catch()
,根据我的经验,它不会变成.then()
,因为调用了一些异常,并且没有调用catch。我曾使用Chai Mocha进行测试,遇到了同样的问题。尝试添加.catch()
,它将显示您的API可能有故障并到达catch语句。cetgtptt4#
您可以尝试清理工作区并创建新的
launch.json
文件iyzzxitl5#
我也遇到了同样的问题,我已经
updated
我的VScode,并像这样更改了我的启动文件:字符串
afdcj2ne6#
由于API请求抛出的一些错误,执行不会转到该行。使用catch块处理错误。打印catch块中的错误。您还可以在catch块中为代码添加断点,以检查有关错误的更多详细信息。