Behaviour-Driven Development (BDD) gives you the best of Test Driven
Development, Domain Driven Design, and Acceptance Test Driven Planning
techniques, so you can create better software with self-documenting,
executable tests that bring users and developers together with a common
language.
Get the most out of BDD in Ruby with The RSpec Book, written by the
lead developer of RSpec, David Chelimsky.
You'll get started right away with RSpec 2 and Cucumber by developing a
simple game, using Cucumber to express high-level requirements in
language your customer understands, and RSpec to express more granular
requirements that focus on the behavior of individual objects in the
system. You'll learn how to use test doubles (mocks and stubs) to
control the environment and focus the RSpec examples on one object at a
time, and how to customize RSpec to "speak" in the language of your
domain.
You'll develop Rails 3 applications and use companion tools such as
Webrat and Selenium to express requirements for web applications both in
memory and in the browser. And you'll learn to specify Rails views,
controllers, and models, each in complete isolation from the other.
Whether you're developing applications, frameworks, or the libraries
that power them, The RSpec Book will help you write better code,
better tests, and deliver better software to happier users.