2. AMIR BARYLKO
REAL WORLD
BDD DEVELOPMENT
PRAIRIE DEV CON
REGINA 2010
Amir Barylko - Real World BDD MavenThought Inc.
3. WHO AM I?
• Architect
• Developer
• Mentor
• Great cook
• The one who’s entertaining you for the next hour!
Amir Barylko - Real World BDD MavenThought Inc.
5. WHY TRADITIONAL
PROJECTS FAIL?
• Delivering late or over budget
• Delivering the wrong thing
• Unstable in production
• Costly to maintain
Amir Barylko - Real World BDD MavenThought Inc.
6. BDD PRINCIPLES
• Behaviour Driven development is about implementing an
application by describing its behaviour from the perspective of
the stakeholder
• Enough is Enough
• Deliver stakeholder value
• It’s all behaviour
Amir Barylko - Real World BDD MavenThought Inc.
8. GHERKIN DSL
• Business readable DSL
• Flush out requirements
• Documentation
• Automated testing
• Used by Cucumber,
SpecFlow, jBehave
Amir Barylko - Real World BDD MavenThought Inc.
10. ADD MOVIE FEATURE
• Feature: Addition
•
In order to make my library grow
•
As a registered user
•
I want to add movies to the library
•
Scenario: Add a movie
•
Given I'm on the home page
•
When I follow Add Media
•
And I enter Young Frankestein in the title
•
And I click Submit
•
Then I should see Young Frankestein in the listing
Amir Barylko - Real World BDD MavenThought Inc.
12. RESOURCES
• Contact me: amir@barylko.com, @abarylko
• Download: http://www.orthocoders.com/prairiedevcon
• Books: The rSpec book
Amir Barylko - Real World BDD MavenThought Inc.
13. RESOURCES II
• SpecFLow: http://www.specflow.org
• Gallio & MbUnit: http://www.gallio.org
• MavenThought Testing: http://maventcommons.codeplex.com
• Rhino Mocks: http://www.ayende.com
• Watin: http://watin.sourceforge.net
• ASP .NET MVC: http://www.asp.net/mvc
Amir Barylko - Real World BDD MavenThought Inc.
14. RESOURCES III
• NUnit: http://www.nunit.org
• SharpTestEx: http://sharptestex.codeplex.com
• NHaml: http://code.google.com/p/nhaml
• Binsor: http://ayende.com/Blog/archive/2007/10/25/
Binsor-2.0.aspx
Amir Barylko - Real World BDD MavenThought Inc.