RSpec is a library that has caused quite a bit of debate in the Ruby community over the last years.

Some people really love it and use nothing else. It is very powerful, and includes some very unique features. Others find it way too big, and too complicated for something as simple as writing some tests.

RSpec is a DSL for writing tests. In other words, it tries to make tests as readable as possible. Not only that, it also produces output that reads like a story, or spec (“specification”), hence the name.