当我使用--debug-brk运行mocha并使用node-inspector打开chrome dev工具时,调试器会跳过我在specfile中放入的任何调试器语句。
我可以获取调试器语句在模块文件中工作,前提是我按照this trick在mocha lib底部放置一个断点。
还有其他人看到过这个问题吗?
答案 0 :(得分:2)
似乎每个人都应该看到node-inspector版本0.2.0beta4的相同问题。
问题在于如何管理断点:
--debug-brk
启动mocha并在第一行停止时,您的规范文件尚未加载,因此前端不会恢复您的断点。此问题的另一个解决方法是在要触发断点的specfile中添加debugger;
语句。
修改强>
请注意,如果在it
回调中设置断点(即规范实现),github上node-inspector问题中提到的解决方案将有效,但它无法帮助您在构建的代码中设置断点规范描述(即specfile中的顶级代码和所有describe
回调)。
示例:
var expect = require('chai').expect;
var calculator = require('./StringCalculator');
// CANNOT break on the line below
describe('add', function() {
// CANNOT break on the line below
it('returns 0 for empty string', function() {
// CAN break on the line below
expect(calculator.add('')).to.equal(0);
});
});
<强> EDIT2 强>
问题在我的node-inspector的分支中得到修复:https://github.com/strongloop/node-inspector。在浏览器中加载node-inspector UI后,您可以立即在specfiles中的任何位置设置断点。
答案 1 :(得分:0)
请在此处查看我对相关问题的回答:https://stackoverflow.com/a/29351654/3304034以获得足够好的工作