11

できます:

  • nodeunitを使用して node.js モジュールをテストできます。
  • node inspectorを使用して、node.js Express サイトをデバッグできます。

しかし、node inspector を使用して 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: No such file or directory機能していません

ほとんど動作する node --debug /usr/local/bin/nodeunit ./routes/edit/bodyTelInfoArraysToObject_test.js

/usr/local/bin/nodeunitコマンドが取るパスはどこですかwhich nodeunit

得られた出力: debugger listening on port 5858 そしてテストがそこで実行されました。

しかし、デバッグにジャンプすることはできません: Chrome で URL を開いlocalhost:8080てデバッグを監視すると:

  1. 最初の読み込み 空のファイル リストが表示される
  2. 2 回目の読み込み: ページが見つかりません。

私のnodeunitテストでは、debuggerそこでデバッグを停止するように書きました。しかし、何もありません。

4

2 に答える 2

11

あなたのテストでは、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;、テストの最初のコマンドの次の行に移動します。

ただし、テストが終了するか、プロジェクトディレクトリ内のファイルが変更されたときにテストを自動的に再起動するノードスーパーバイザーですべてを開始することを好みます。

$ 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
于 2013-05-22T12:20:58.943 に答える