Home > Software, Testing > Behaviour Driven Development Frameworks are for Geeks and Crackpots

Behaviour Driven Development Frameworks are for Geeks and Crackpots

June 24th, 2009

Behaviour Driven Development (BDD) generally makes use of Mocks, Unit Tests, or specialized BDD Specification Frameworks like RSpec, MSpec, NSpecJBehave, NBehave. View the list of other BDD frameworks here and read more about BDD here: A New Look at Test Driven Development.

Now, I’ve been finding Behaviour Driven Development fascinating in a geeky kind of way (kind of like functional programming languages, and programming paradigm debates), but BDD has left a gnawing uneasiness in the back of my mind – generally this mind chewing begins when I’m missing the bigger picture or when something just isn’t right. I got a chuckle out of Spolsky’s writing as he discusses specification frameworks:

the geeks … focus on things they can see in the code, rather than waiting for the users to judge. They’re programmers, so they try to automate everything in their life, and of course they try to automate the QA process. This is how you get unit testing … In order to mechanically prove that a program corresponds to some spec, the spec itself needs to be extremely detailed. In fact the spec has to define everything about the program, otherwise, nothing can be proven automatically and mechanically. Now, if the spec does define everything about how the program is going to behave, then, lo and behold, it contains all the information necessary to generate the program! And now certain geeks go off to a very dark place where they start thinking about automatically compiling specs into programs, and they start to think that they’ve just invented a way to program computers without programming.

Now, this is the software engineering equivalent of a perpetual motion machine. It’s one of those things that crackpots keep trying to do, no matter how much you tell them it could never work.Talk at Yale: Part 1 of 3, Joel Spolsky

Hehehe… Anyhow; I need to cut this post short. My DIY Nuclear Fusion Reactor and perpetual motion machine are calling my name. Errrr… I mean, I need to continue working through the RSpec book and playing around with other specification frameworks, because there’s always value in learning something new.

Author: Adam Kahtava Categories: Software, Testing Tags:
  1. No comments yet.
  1. No trackbacks yet.