VS Code のgulp環境でmocha, power-assertを使ったテストを書く
VS Code でのgulp環境
node.jsのインストールはnodist を使うとバージョン管理できるので便利です。 VS Code でgulpのtask実行はいかが参考になります。
mocha, power-assert のインストール
コマンドラインで以下のコマンドを実行します。 Windows環境なのでGit bash で実行しました。
準備
study_mocha
というディレクトリを作成してここにテストコードを書く環境をつくります。
test
ディレクトリにテストコードを書きます。
mkdir study_mocha cd study_mocha npm init mkdir test
gulpfile.js を記述する
プロジェクト直下にgulpfile.js を記述します。
task を実行/終了する
VS Code でtask を実行/終了するには以下のキーボードショートカットを利用します。
task を実行する
Ctrl+P → tasks
task を終了する
Ctrl+Shift+P → "Terminate Running Task."
補足: キーボードショートカットを追加するには
File > Preferences > Keyboard Shortcuts. (Code > Preferences > Keyboard Shortcuts on Mac)
からkeybinding.json
に以下の用に記述します。
{ "key": "ctrl+shift+t", "command": "workbench.action.tasks.terminate" }
Visual Studio Code Key Bindings
テストを実行してみる
テストコードを./test/test.js
に記述します。
var assert = require("power-assert"); // assertモジュールのinclude var author = "hoo"; it ("is power-assert", function() { assert(author === 'hoo'); //assert(author === 'hoge'); });
ディレクトリ構成はこうなります。
task を実行する
Ctrl+P → task → watch
./test/test.js
をセーブするたびにテストが実行されます。
テストケースが成功の場合以下のように表示されます。
失敗の場合はgulp 自体がストップしてしまうので再度タスクを実行しないといけないです。
これを回避するためにはgulp-plumberを導入するとよいみたいです。エラー時にgulp のタスクを終了させないためのモジュールです。
参考
mocha + power-assert環境の構築 - Qiita
vscode - Stop a gulp watch task? - Stack Overflow