Testing is a firmly ingrained part of the Ruby culture: you probably ran across Test::Unit not long after you first started writing Ruby code (though it wouldn’t be surprising if you ignored it for a while). But it hasn’t been a static part of Ruby – we’ve seen the simple availability of tests evolve into test-driven development (TDD) that in turn gave rise to behavior-driven development (BDD). Along the way, Ruby has spawned a variety of testing tools and frameworks. The latest, Aslak Hellesoy’s Cucumber, is the latest addition to the RSpec family of tools.
Cucumber is designed to allow you to execute feature documentation written in plain text (often known as “stories”). Read More

We’ve all heard the admonitions: “Don’t Repeat Yourself!” But how do you avoid this if you’re working on a Ruby codebase that stretches to thousands of lines, maintained by multiple developers? One answer is to run a tool that looks for duplicate code. This is an area where good tools are tantalizingly close – there are at least three out there that are worth checking out: