この新しいリリースは Rails 2.0 にしっかり対応している。RSpec のトランクは EdgeRails (まだリリースされていないものなど Rails の開発バージョンのこと)をトラッキングしており、EdgeRails と RSpec 両方のトランクで開発をしているデベロッパは RSpec チームが両者の相違点を解決するのを手助けしてくれている。これがリリースの動機のひとつであるが、他にもいくつかのアピールポイントがある。
RSpec の主要な新規機能のひとつは Story Runner だ。これは RSpec にマージされた Dan North 氏の RBehave がもっていた機能(source)である。ストーリーは、アプリケーション要件の実行可能なステートメントである。RSpec 1.1.0 は Rails ユーザ用には RailsStory を用意しており、従来の Rails でいう Test::Unit を使った integration test がもっている役割を完全にカバーしている。受入テストのようなそれ以外の利用もできる。
Test::Unit を使用している既存の Rails プロジェクトに RSpec を導入するのを妨げる要因のひとつは、移行方法の問題だった。現在 RSpec はこれを簡単に行うことができる。Rails 用の RSpec ランナーは実は一年以上前から Test::Unit の上に構築されている。RSpec 1.1.0 では Spec モジュールを Test::Unit の TestCase に含めることが可能になった。これで、Test::Unit から RSpec シンタックスへの段階的な変更が可能である。TestCase は振舞に、テストメソッドは実行可能なサンプルに、そしてアサーションはエクスペクテーションに、少しずつ変えていくことが可能だ。既存の TestCase を、それまでの動作を維持したまま変更することができるのである。
もうひとつの主要な新機能は、振舞の定義がネスト可能になったことだ。多くの場合、これまでの RSpec がもっていた shared specification 機能よりも、こちらのほうが一般的なスペックのバリエーションである自然なサブスペックの定義に役立つ。
全体として、これは現在のそして将来の RSpec ユーザたちにとって大きなニュースである。
あなたはもう RSpec を使っているだろうか?もしまだなら是非使ってみてほしい。
原文はこちらです:http://www.infoq.com/news/2007/12/rspec-1dot1