有人知道这是否可能吗?大多数node-inspector示例似乎都是针对调试已调用的网页而设计的。但我想要调试jasmine-node测试。
node --debug-brk node_modules/jasmine-node/lib/jasmine-node/cli.js spec/my_spec.js
jasmine-node
脚本的源代码,你会发现它只是调用了cli.js
,我发现我可以很好地调试那个脚本。--coffee
开关即可,例如:node --debug-brk node_modules/jasmine-node/lib/jasmine-node/cli.js --coffee spec/my_spec.coffee
require('tty').setRawMode(true);
var stdin = process.openStdin();
exports.toggle = function(fireThis)
{
if (process.argv.indexOf("debug")!=-1)
{
console.log("debug flag found, press any key to start or rerun. Press 'ctrl-c' to cancel out!");
stdin.on('keypress', function (chunk, key) {
if (key.name == 'c' && key.ctrl == true)
{
process.exit();
}
fireThis();
});
}
else
{
console.log("Running, press any key to rerun or ctrl-c to exit.");
fireThis();
stdin.on('keypress', function (chunk, key) {
if (key.name == 'c' && key.ctrl == true)
{
process.exit();
}
fireThis();
});
}
}
var toggle = require('./toggle');
toggle.toggle(function(){
var vows = require('vows'),
assert = require('assert');
vows.describe('Redis Mass Data Storage').addBatch({
....
然后像这样运行您的测试:node --debug myfile.js debug。如果您运行调试切换,它将等待直到您按下除ctrl-c以外的任何键。Ctrl-c退出。您还可以重新运行,这很方便。
w0000t。
node-debug /usr/local/lib/node_modules/jasmine-node/lib/jasmine-node/cli.js spec/
- rob_jamesnode --inspect --debug-brk -i ./node_modules/jasmine-node/lib/jasmine-node/cli.js test-jasmine/
正如 @xorcus 所提到的,你不能使用 --autotest。 - Jerinaw