Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Exploring bdd

701 views

Published on

Published in: Technology
  • Be the first to comment

Exploring bdd

  1. 1. Exploring BDD BDD WTF?By John J Nolan.
  2. 2. AimsDefine BDDCucumberKata/ Koan/ Kumite?
  3. 3. A quicksummary... Dan North sees a pattern ofmisunderstanding.TDDPeople are confused.
  4. 4. ‘Test’ isambiguouswe are verifying behaviourshould > test
  5. 5. Lots of ‘should’Frameworks JBehave RSpec MSpec NBehave
  6. 6. It’s all behaviour.
  7. 7. It’s all specification.
  8. 8. Requirements(ARE BEHAVIOUR)
  9. 9. Given When ThenA Ubiquitous Language.Story’s Behaviour is its acceptance criteria.
  10. 10. BUT IS THAT IT?BECAUSE...
  11. 11. BDD IS A SECOND-GENERATION, OUTSIDE-IN, PULL-BASED, MULTIPLE-STAKEHOLDER, MULTIPLE-SCALE, HIGH- AUTOMATION, AGILE METHODOLOGY. IT DESCRIBES A CYCLE OF INTERACTIONS WITH WELL-DEFINED OUTPUTS, RESULTING IN THE DELIVERY OFWORKING, TESTED SOFTWARE THAT MATTERS.
  12. 12. tl;dr
  13. 13. Second GenerationEvolution of XPTDDDDDATDD
  14. 14. The BDDCycleOutside in
  15. 15. Pull BasedRespond to demandA focus on value
  16. 16. Multiple StakeholderNot just the end userOther stakeholders include gold ownersit usersmaintaing developers
  17. 17. MultipleScaleOutside and as at internallevel
  18. 18. HIGH AUTOMATIONINSTANT FEEDBACK
  19. 19. Agile Methodology?Assume youve got it wrong.Have conversations to find out how wrong.When you know enough to get feedback on therest, implement and release.Assume youve got it wrong.
  20. 20. IT DESCRIBES A CYCLE OF INTERACTIONS WITH WELL- DEFINED OUTPUTS, RESULTING IN THE DELIVERY OF WORKING, TESTED SOFTWARE THAT MATTERS.
  21. 21. CUCUMBER& OTHERS
  22. 22. Code?
  23. 23. WorkflowWrite SpecsRun cucumberComplete StepDefinitionRun CucumberMove on to next oneuntil done.
  24. 24. Imperative Or Declarative
  25. 25. Helpful stuffReuse stepsScenario tablesScenario outlinestags
  26. 26. At UI Or subcutaneously
  27. 27. A Koan
  28. 28. CHESS BOARD MODELLING SIMPLE BEHAVIOURS
  29. 29. Rules2 Pieces Game is either won( a piece is taken)White Pawn Or drawnBlack KnightPlaced anywhere onboardUp to 2 rounds ofmoves
  30. 30. I have some specsFork me. fill in questionnairehttps://github.com/ send me a pulljohnnonolan/ requestChessBoard-Kata or emailBranch me or tweetlook at questionnaireDo it

×