SpookyJS + Mocha
SpookyJSとは、PhantomJSというHeadless Webkit(GUIのないWebkit的なもの)を、クライアントサイドのテストUtilityとして使えるCasperJSをNode.jsで使えるようにしたモノです。
やりたいことと構成
Node.jsのプロジェクト(express)上でMocha使ってやってるBackendのテストと一緒に、FrontendのテストもSpookyJS経由で行う。
経緯
この前試したZombie.jsがうまくいかないみたいなので別の方法を探したというわけです。。
やってみよう!!
Mocha
Mochaのインストールとか簡単なhello world
導入としてこのサイトも参考にしました。
http://d.hatena.ne.jp/hokaccha/20111202/1322840375
今回はassertionをshouldでやってるけど、元々使ってるのもあってexpectを採用してます。
PhantomJS
インストールはmacなのでHomebrew。
$ brew install phantomjs
$ brew install phantomjs
CasperJS
こちらもHomebrewで。
$ brew install casperjs
$ brew install casperjs
APIなどはSpookyJSで使えるものと大体同じ、というかこちらが本家なのでAPIリファレンスをちゃんと見ておくと良いです。むしろSpookyの方にドキュメントが殆ど無い。。
http://casperjs.org/api.html#casper
SpookyJS
インストールはnpmでできます。
$ npm install spooky
入れた時にnode_module/spooky/template?だったかにsampleがあったのでnodeコマンドで実行して試せます。
その他環境
SpookyJSでunderscoreなど必要みたいなので、package.jsのdependenciesをこんな感じで書く。
"dependencies": {
"express": "3.0.6",
"jade": "*",
"mocha": "*",
"expect": "*",
"spooky": "*",
"underscore": "*"
}
spookyHelper.js
ヘルパーを作っておいて、テストスクリプトから呼べるようにしておきます。spookyMochaTest.js
spookyHelper.jsを使って、spooky + mochaを実現してるコード。こっからは、SpookyJS(CasperJS)のAPIゴリゴリ使って、テストを書いてく感じ。
CasperJSの使い方については、また書けたら書きます。
0 件のコメント:
コメントを投稿