Note: Originally posted on GeeksWithBlogs.net on June 11, 2013. These thoughts are still with me and valid today.
In this post, I wanted to share some thoughts and resources that I’ve collected since learning about Behavior Driven Development (BDD) (as of June 2013). Thinking in BDD terms has really helped me in improving my software development and thinking through problems. I remember a day when it clicked. It was an exciting time for me and I don’t planning on going back to the old approach. My tendency is to dive into the code before thinking through things and that gets me into trouble. I’m also an optimistic developer and don’t always spend enough time testing the UI. BDD specification tests (Jasmine or in C#) let me write re-runnable tests and I spend less time clicking through complex scenarios, and slows me down and forces me to think. I still need to spend time in the UI, but not every time I change code. I’m also able to squash bugs found once and for awhile and be confident that they won’t return.
There is a lot to BDD (it’s an extension of Test Driven Development and describes who we can communicate with users, tests, managers, developers using the Given… When… Then (GWT) or When x, it should do y). You can see my BDD posts which I hope to add to in the future.I first learned about BDD at the Heartland Developer’s Conference in Omaha, NE from Lee Brandt. Check out his blog for good information about BDD.
I plan on adding more posts on more benefits of BDD, how I’ve been using it and what I’ve been learning.
EDIT: Here’s a post about what I see as the Benefits of Behavior Driven Development.
Please consider using Brave and adding me to your payment ledger. Then you won't have to see ads!