Building software with Behaviour-Driven Development is like building a house. Actually, it’s not — but it’s a metaphor I want to explore. The motivation for this post comes from the fact that every person I talk to seems to have a different idea of what BDD is. This article is simply me sharing my personal view of what I think it is.
I’ve heard BDD described in many different ways, some of these include:
Using Cucumber is doing BDD
BDD is a communication tool
BDD is like TDD but talking about behaviours instead of implementation
Gherkin feature files are BDD Tests
You are either doing BDD or TDD; you can’t do both
I have some pretty strong opinions on each of these points, but I don’t want to address them directly….Continue