Running BDD Resources?

What would you recommend to start learning and applying BDD in random game studios?

+2


source to share


3 answers


While I can't talk to BDD specifically with games, I can't pass up the opportunity to introduce you to this great article:

http://www.code-magazine.com/article.aspx?quickid=0805061&page=1

One of my favorite reviews of BDD as a development methodology. Facilitates the process very well and explains the creation of specifications very well through care, context and observation.



I also highly recommend using xUnit.NET and Moq as your testing framework (if you're lucky enough to use .NET, that is). The following article is a great spec testing framework built on xUnit.NET and fits very well the meaning of one assertion per test:

http://iridescence.no/post/Extending-xUnit-with-a-Custom-ObservationAttribute-for-BDD-Style-Testing.aspx

+5


source


Depending on your language and learning preference:

The RSpec Book talks about BDD using Ruby, RSpec and Cucumber. This is an EXCELLENT source for studying BDD concentric circles.

jrista the link to Bellware's Code Magazine article is another GREAT resource.



Just remember that BDD describes requirements / specifications descriptions so succinctly that they are executable. Then write code that meets this specification. Rinse and repeat.

Hope this helps. Lee

+3


source


I think there are two aspects to BDD to consider if you want to use it. One part: "BDD is TDD done right," so the way to learn TDD is not to think about it, how to write tests first, but to write behavior / specifications first.

The second part is that BDD implemented in JBehave is a side that's long forgotten in the .Net community, I think NBehave only recently implemented something similar to JBehave being a way to have non-programmers writing specifications (behaviors ) for you. This only applies to fairly high level behaviors like user stories and scripts, so you can't do that. You also need the "first part of BDD" and / or TDD. The second type of BDD I am describing is in addition to "regular TDD".

+2


source







All Articles