node.js - 如何使用 node-inspector 调试 nodeunit

标签 node.js nodeunit node-inspector

我能做到:

  • 我可以使用 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观看调试时:

  1. 第一次加载我看到空文件列表
  2. 第二次加载:找不到页面。

在我的 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/

相关文章:

JavaScript:是否可以为 'debugger' 起别名?

javascript - 使用 Node 检查器进行调试的正确过程是什么?

babeljs - 如何使用节点检查器调试 babelJS 转译代码?

facebook - Heroku - 使用 Node.js 创建了一个 facebook 应用程序,它给出了类型错误

javascript - 找不到Nodeunit命令?

javascript - 如何在 Nodeunit 中显示完整的堆栈跟踪?

javascript - Nodeunit不会运行nodeunit命令只是给出错误

正则表达式 : Match text NOT part of a HTML tag

JavaScript 抛出 'ReferenceError: require is not defined'

javascript - 在 CouchDB 中获取数据库的所有文档