有谁知道这是否可能?大部分用于节点检查器的示例似乎都旨在调试调用的网页。我希望能够调试茉莉花节点测试。
我最终写了一个名为toggle的工具:
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。