我创建了一个使用 Test Anything Protocol (node-tap) 的 NodeJS 项目。我正在使用 WebStorm 8.0.1 IDE。我现在想在运行单元测试时进行步骤调试。由于 Tap 在 Node 的世界中似乎相当晦涩,当然,WebStorm 中内置的该框架没有运行/调试配置。
我能够通过使用以下设置配置 Node.js 运行配置来通过 IDE 运行测试:
Node interpreter: C:\Program Files\nodejs\node.exe Node parameters: --debug-brk Working directory: {my project directory} JavaScript file: node_modules\tap\bin\tap.js Application parameters: test/test-*.js
但是,当使用此配置进行调试时,我的断点没有被命中。此外,即使插入 debugger;
语句也不会触发中断。
有没有办法让我专门在 WebStorm 中运行 Tap 测试?如果没有,您为什么认为我的测试中的断点没有被命中?
最佳答案
在深入研究tap
模块时,它似乎所做的只是在运行 Node 的子进程中启动每个测试文件;然后它只使用符合 Test Anywhere 协议(protocol)的输出。
所以对于我来说,调试时,我可以直接使用 Node.js 来调试运行我的测试 JS。这似乎工作正常。希望这会对不熟悉此测试框架的其他人有所帮助。
关于node.js - 在 WebStorm 中使用任意 NodeJS 单元测试框架进行调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23374411/