Skip to content

ALT.NET: Acceptance Test Driven Dev: BDD and Executable Specifications in .NET

Photo of Josh Gough
Hosted By
Josh G.
ALT.NET:  Acceptance Test Driven Dev: BDD and Executable Specifications in .NET

Details

Hello everyone,

*** NOTE: We do not have a private room this time like usual, but will have several tables together in the upper level ***

I'd love to get back into the habit of having these meetups at least once a month. I can do that now after a recent job change.

So, let's meet and discuss what's new, useful, and interesting in the .NET world and our respective projects, and business or organizations.

Focused Topic and Intro: Acceptance Test Driven Development: Behavior Driven Development (BDD) and Executable Specifications in .NET

"the practice of expressing functional story requirements as concrete examples or expectations prior to story development. During story development, a collaborative workflow occurs in which: examples written and then automated; granular automated unit tests are developed; and the system code is written and integrated with the rest of the running, tested software. The story is "done"—deemed ready for exploratory and other testing—when these scope-defining automated checks pass”

-- Janet Gregory, quoting Jennitta Andrea on her blog after Agile 2010. Janet writes further:

"Whether we choose to call it BDD or ATDD or Specification by Example, we want the same result – a shared common understanding of what is to be built to try to build the ‘thing’ right the first time. We know it never will be, but the less rework, the better."

Full Agenda

07:30 - 08:0O : Meet, greet, order food & drink

08:00 - 08:05 : Announcements (Job opps? On the Market? Other events? Step up and announce!)

08:05 - 08:15 : Pluralsight Training Giveaway (Details below!)

08:15 - 09:30 : Focused Discussion on Acceptance Test Driven Development with BDD and Executable Specifications in .NET

9:30 - beyond : Open Discussion

Topic Details

At recent lunch-time events for this group, the topic of Behavior-Driven Development (BDD) and Executable Specifications was prominent. It's time to catch up to the state of this in .NET. I've linked a few projects and resources below for learning more about this important subject.

Pluralsight Training Giveaway

Pluralsight is our new group sponsor! I will be giving away 2 free 1-month cards for Pluralsight Training videos. View their complete course list here: http://www.pluralsight-training.net/microsoft/courses/Index .

To qualify for the giveaway, you will need to read an article about our topic because I'll ask a question from each link. The first person to answer a question about the first article will win a card, and the same thing for the first (different) person to answer a question about the second article:

Article 1: Dan North's Introduction to Behavior-Driven-Development:

http://dannorth.net/introducing-bdd/

Article 2: Steve Smith's tutorial on using SpecFlow and WaTiN :

http://stevesmithblog.com/blog/everything-you-need-to-get-started-with-specflow-and-watin/

Additional Resources and Training on BDD and Executable Specifications

There are tons of resources now about these subjects. Here are but a few I've found that look useful. Some I've already read or watched, others I have not.

I plan to watch the first two free video podcasts below before the event:

Free Video Training:

Driving an ASP.NET MVC Application Outside In With SpecFlow:

http://skillsmatter.com/podcast/open-source-dot-net/driving-an-aspdot-net-mvc-application-outside-in-with-specflow

UPDATE: Slides: http://dl.dropbox.com/u/51289/Presentations/SpecFlowTutorial_Day1.pdf

Advanced Topics of Behavior Driven Development with SpecFlow Examples:

http://skillsmatter.com/podcast/open-source-dot-net/advanced-topics-of-behavior-driven-development-with-specflow-examples

UPDATE: Slides: http://dl.dropbox.com/u/51289/Presentations/SpecFlowTutorial_Day2.pdf

*** UPDATE: From Gaspar Nagy of the SpecFlow project: "To see SpecFlow's current status, look at our recent video and slide presentation from NDC ( www.ndc.no (http://www.ndc.no/)): http://blog.jonasbandi.net/2011/06/our-ndc-2011-slides-specflow-bdd.html " ***

Commercial Video Training (But Free if we decide to view it during one of our meetups!!!)

Pluralsight Course: Test First Development, Part 2: http://www.pluralsight-training.net/microsoft/courses/tableofcontents?courseName=test-first-development-2

*** Pluralsight has authorized me to show any training video during our meetups for free! ***

Articles:

http://en.wikipedia.org/wiki/Behavior_Driven_Development

http://behaviour-driven.org/

http://www.agilemodeling.com/essays/executableSpecifications.htm

http://www.codeproject.com/KB/architecture/BddWithSpecFlow.aspx

http://www.infoq.com/news/2011/02/BDD-ATDD

Software Tools:

SpecFlow: http://www.specflow.org/

StoryQ: http://storyq.codeplex.com/

StoryTeller: http://codebetter.com/jeremymiller/2010/07/05/storyteller-one-point-oh/

And more: http://stackoverflow.com/questions/307895/what-is-the-most-mature-bdd-framework-for-net

Podcasts & Interviews:

http://www.infoq.com/interviews/dan-north-bdd

http://skillsmatter.com/event/agile-testing/agile-specifications-bdd-and-testing-exchange/wd-157

Slidedecks:

http://www.slideshare.net/mfloryan/acceptance-criteria-with-specflow <-- Pratical example

http://www.slideshare.net/marcusoftnet/specification-by-example-with-specflow-110217

<-- Very extensive, long slides!

http://www.slideshare.net/kjbuckley/tdd-bdd-and-mocks-presentation <-- Ruby, RSpec

Live Presentations:

http://skillsmatter.com/podcast/agile-testing/bdd-atdd-and-page-objects/js-1956

http://skillsmatter.com/podcast/java-jee/how-to-sell-bdd-to-the-business

http://skillsmatter.com/podcast/agile-testing/acceptance-tests

http://skillsmatter.com/podcast/open-source-dot-net/fitnessedot-net-tips-and-tricks

Books:

The RSpec Book: http://www.amazon.com/RSpec-Book-Behaviour-Development-Cucumber/dp/1934356379/ref=sr_1_1?s=books&ie=UTF8&qid=1309109669&sr=1-1

Below are all by Gojko Adzic. I have only partially read "Bridging the Communication Gap" so far, so I cannot vouch for the others, but BCG is good about 25% in.

http://www.acceptancetesting.info/the-book/ (Bridging the Communication Gap)

http://gojko.net/fitnesse/book/

http://specificationbyexample.com/

Photo of ALT.NET Atlanta Pragmatic Programmers group
ALT.NET Atlanta Pragmatic Programmers
See more events
Manuel's Tavern
603 N Highland Ave NE · Atlanta, GA