TDD? BDD?

Test Driven Development (TDD) has you define the behaviour of your system by writing small tests that precisely define some small piece of your system's behaviour. Then you implement that behaviour. Then you clean up and improve your design...It is no surprise that it takes beginners some time to get to the understanding that TDD isn't about testing at all...if they ever do.

How true!!! Until today I didn't pay much attention to the TDD. Like most people my opinion was "Why to lose time for testing my small programs. Some day...on bigger project...maybe" Oh no...I was sooo far from the true. But I'm going to change...

Everything started from a post in the Dave Astel's blog: A New Look at Test Driven Development. He explain very well my and maybe other people's confusion about TDD - all these Test class names, trying to test every class and method (1-1 relationship) etc. In the same post he is proposing a new look on the same problem - writing specifications of what your code will have to do. The name for this new look is Behaviour Driven Development (BDD). It's already implemented in Ruby - the RSpec framework. For bad luck there is still not good Rails support in it.

So on first time I'll start with the old, but well supported rails testing framework. A very good starting point: Putting REST on Rails - step by step REST implementation. The article is better to be tryed with Rails 1.0, because Rails 1.1 way for implementing REST is different and seems easier. But the flow of creating the application is good. I'll try to follow it.