我能做到:
- 我可以使用 nodeunit 测试 node.js 模块.
- 我可以使用 node inspector 调试我的 node.js express 站点.
但是如何使用 Node 检查器调试 nodeunit 测试?
我试过了,但没用:
nodeunit --debug myNodeUnitModule_test.js
不工作。- 我尝试安装 nodebug .
并像这样使用它:
nodebug/usr/local/bin/nodeunit myNodeunit_test.js
但它既不适用于ubuntu(No such file or directory
)也不适用于mac(env: node\r: 没有这样的文件或目录
)
几乎可以工作 node --debug /usr/local/bin/nodeunit ./routes/edit/bodyTelInfoArraysToObject_test.js
其中 /usr/local/bin/nodeunit
是命令 which nodeunit
得到输出:
调试器监听 5858 端口
并在那里执行测试。
但是我无法跳转到debuggin:当我在chrome中打开url localhost:8080
观看调试时:
- 第一次加载我看到空文件列表
- 第二次加载:找不到页面。
在我的 nodeunit 测试中,我编写了 debugger
以在此处停止调试。
但什么都没有。
最佳答案
在您的测试中插入 debugger;
命令
exports['Main test'] = function(test){
debugger;
test.expect(1);
test.ok(true, 'Must be ok');
test.done();
};
开始这一切
$ node --debug-brk `which nodeunit` test.js
现在在浏览器中按 F8,然后按 F10,您就在测试中第一个 debugger;
命令之后的下一行。
但我更喜欢使用 node-supervisor 启动所有内容,当测试完成或项目目录中的文件更改时会自动重新启动测试:
$ npm -g install supervisor node-inspector
$ # console 1
$ # supervisor restarts node-inspector when it quits
$ # ignores file changes
$ supervisor -i . -x node-inspector .
$ # console 2
$ supervisor --debug-brk -- `which nodeunit` test/index.js
关于node.js - 如何使用 node-inspector 调试 nodeunit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16652358/