Thursday, May 14, 2009 -
Holy cow! Another *DD – man I really must have an IV with that Alt.NET Punch just coursing like a train in my veins! I ask for your patience with this one – cause I think BDD is a really good tool to know – whether you use it or not – knowing the workings of it will allow you to have some intelligent conversation the next time you’re in Austin :).
The Start of BDD
It all started – or so I’ve read – with a guy named Dan North:
I had a problem. While using and teaching agile practices like test-driven development (TDD) on projects in different environments, I kept coming across the same confusion and misunderstandings. Programmers wanted to know where to start, what to test and what not to test, how much to test in one go, what to call their tests, and how to understand why a test fails.
The deeper I got into TDD, the more I felt that my own journey had been less of a wax-on, wax-off process of gradual mastery than a series of blind alleys. I remember thinking “If only someone had told me that!” far more often than I thought “Wow, a door has opened.” I decided it must be possible to present TDD in a way that gets straight to the good stuff and avoids all the pitfalls.
I felt this exact way when learning up on TDD:
Things like that. I still don’t know those answers, but I feel like BDD has helped me see some very interesting ways to address these issues. Moreover, it will help me get along with my PM better – maybe :).
The Usual Caveats
No – I’m not an expert. Please don’t take any of what you’re about to say as guidance. Do take it as queue to find out more. Do ask a lot of questions and Do challenge yourself to see what some people love to use.
Double-click for full screen
How was the transition from TDD to BDD for you? Do you think you could have started off with BDD straightaway or was doing TDD first beneficial to you?
Great post regardless!
http://github.com/machine/machine.specifications/... but can't work out how to download. When I click the download button nothing happens. The download tabs is empty.
I have written a few Specs and now have gone back to trying to implement the code. My code has bugs (surprise!). How do I debug? I have tried setting a breakpoint in the Because delegate before the place where the exception is thrown but execution does not stop when I use the mspec runner. I have tried breakpoints in all sorts of places but they are never triggered. Is there a qualifer to the runner that I am missing, or is this just a fact of life?
(Sorry if this post appears twice - intenseDebate said that they lost my comment the first time)
"I didn’t “quit” Kona either – it belongs to the team I worked on. I can dig you didn’t like it – I didn’t like it much either."
The last part of the quote scares me a bit because I am going live soon with a site that used the MVC Storefront as the starting point of the site. I thought the screencasts were great and learned a lot. This site that is going live is based on the MVC Storefront but I changed it quite a bit - for we are selling AND BUYING items and there were some things I just didn't like and I changed how they were coded. I am just hoping that the little things that I didn't like are the same things that Rob "didn't like".
Rob would it be frowned upon by Microsoft if you did a post that was just a high-level of "If I knew then what I know now" in regards to the MVC Storefront.
I also think I went overboard on the CMS stuff - but it's OK, I was experimenting.
I liked the Storefront bits - I'll hopefully pick that up again in the future. Bertrand and some of the ASP team are running with Kona now.