連載
» 2012年09月05日 19時32分 公開

フレームワークで実践! JavaScriptテスト入門(1):JavaScriptテストの基礎知識と使えるフレームワーク6選 (3/3)

[佐伯純,TIS コーポレート本部 戦略技術センター]
前のページへ 1|2|3       

今注目のJavaScriptテストフレームワーク6選

 ここでは、実際に今後の連載で取り上げるフレームワークを簡単に紹介します。以下のように、組み合わせたり単独で使ったりする方法もあります。

【1】Phantomjs+【2】Jasmine

 「Phantomjs」はWebKitをヘッドレス化してJavaScriptのAPIを利用できるようにしたツールです。コマンドラインからDOMやCSSといった通常ブラウザで扱えるものは一通り操作可能で、SVGやCanvasも利用できます。またjQueryなどのライブラリも利用可能です。

 このツールを利用してヘッドレスなテストを実行するテスティングフレームワークとして、「Jasmine」を組み合わせます。JasmineはJavaScriptでBDDを実行するためのフレームワークです。RubyのRSpecライクな記法でテストを記述できます。

Phantomjs+【3】QUnit

 Phantomjsの利用はそのままで、組み合わせを「QUnit」に変えてみます。QUnitはjQueryのテストを行うために作られたフレームワークですが、現在は特にjQueryと関係なくJavaScript全般のテストが行えます。

http://qunitjs.com/

QUnit via kwout

 QUnit自体はWebブラウザベースで実行するのが基本ですが、Phantomjsと組み合わせることでヘッドレスなテストが可能となります。

【4】JsTestDriver

 「JsTestDriver」はヘッドレスな手法とブラウザベースのテストの良いところをそれぞれ取り入れたような形でテスト実行できるフレームワークです。JsTestDriverでは、サーバを立ててそこに接続したWebブラウザ上でテストを実行します。

 テスト自体はxUnit(QUnitなど)系のテストを利用でき、複数のWebブラウザ上での高速なテスト実行をコマンドラインの操作からできるようにしています。

【5】Capybara-webkit+【6】Sinon.JS

 ユーザーのWebブラウザ操作をエミュレートする形でテスト実行するフレームワークである「Capybara」をWebKitベースで実行できるようにしたものが「Capybara-webkit」です。GUIベースでの利用もできますが、「仮想フレームバッファ」という方法で画面を表示せずにバッファ上に展開するだけで実行することもできます。本連載では、そちらを利用してヘッドレスに実行する方法を試します。

 また、スタブやモックを提供してくれるライブラリである「Sinon.JS」を組み合わせて利用します。

 次回以降、それぞれのフレームワークについて詳細に見ていきますので、お楽しみに。


前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。