JavaScriptのビヘイビア駆動開発テスティングフレームワーク、Jasmineの最新バージョンがリリースされた。今回のリリースには、Node.jsサポートの改善と品質向上への取り組みが含まれている。バージョン2.0の変更点を以下に挙げる。
- NodeのテストをすべてJasmineの継続的インテグレーションテストの一部に入れることで、Node.jsサポートの品質を強化した。インテグレーションテストには、Firefox、Chrome、Safari、Internet ExplorerといったWebブラウザに対するテストも含まれている。
- Rubyへの依存がなくなり、Node.jsとGrunt.jsに置き換えられた。これによってコード量は削減され、寄贈された機能を追加する前のコミュニティによる検証が簡単になるだろう。
- 自分自身をテストのためのJasmineを追加することで、Jasmineの品質向上に取り組んだ。
以前のバージョンとの後方互換性を壊す変更もいくつか含まれている。
- 非同期テストの構文が変わった。コールバック関数が提供される。
- レポーターのインターフェイスが置き換えられた。これによってコールバックの使用方法が変わり、カスタム実装とJasmineの結合度が減少する。
- 等価チェックのためのコードが置き換えられた。振る舞いがこれまでと異なるおそれがある。
こうした変更に加えて、多くの問題とバグも修正されている。そのうちの大部分は、より明確なコーディングスタイルを使った、コードにあるオブジェクトほぼ全てに対するリファクタリングによるものだ。これはテストの改善と、Jasmine拡張時にコアチームおよびコミュニティの開発が簡単になることを目的としている。
また、2.0での変更を中心に、Jasmineの紹介もアップデートされた。
JasmineはJavaScriptコードのビヘイビア駆動開発テスティングフレームワークだ。他のJavaScriptフレームワークやDOM (Document Object Model)には依存していない。
Jasmineユーザ向けのメーリングリストには800名以上が参加しており、これまで600ほどのトピックが語られている。今年の春には、Jasmineを使ったJavaScriptテスティングフレームワークに関する本も出版されている。
JasmineはDavis W. Frank氏によって作られた。現在は3人の開発者によってメンテナンスされ、オープンソースプロダクトとしてMITライセンスで公開されている。