Node.js

Node.js Debug and Test Tips

More than 3 years have passed since last update.

概要

Node.jsの開発で、デバッグやテストに役に立つTipsをまとめました。

デバッグ

console.xxx

標準出力にログを出力する。

  • console.log()
  • console.info()
  • console.warn()
  • console.error()
  • console.dir()
  • console.trace() => スタックとレースを出力
  • console.time() => 始めから終わりまでの時間を出力

assert.xxx

値が期待した値と異なる場合は、例外を発生させる。

node debug

コマンドライン上でデバッグする。

  • c: continue 実行
  • n: next 次の行を実行
  • s: step 次の関数内を実行
  • repl: プログラム内の変数や関数にアクセスする
  • watch(): 変数の値をウォッチする。引数はテキストで変数名を指定する
  • unwatch(): 変数の値をウォッチを解除する
  • setBreakPoint / sb: ブレークポイントを設定する
  • clearBreakPoint / cb: ブレークポイントを解除する

node-inspector

GUI(Coogle Chromeのデバッガー)でデバッグする。

# node-inspectorをインストール
npm install -g node-inspector

# node-inspectorでデバッグするプロセスを起動する
node --debug-brk app.js

# node-inspectorを起動
node-inspector

テスト

mocha

ユニットテストのフレームワーク

npm install mocha

supertest

expressのwebテストフレームワーク
mochaと合わせて使う、httpレベルのでテストが可能。

npm install supertest
node_modules/mocha/bin/mocha --reporter spec

supertest-session

supertestにsession管理機能を追加したもの。
ログイン機能などがある場合はこちらを使うと良い。

npm install supertest-session
node_modules/mocha/bin/mocha --reporter spec