Exploring bdd

651 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
651
On SlideShare
0
From Embeds
0
Number of Embeds
57
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • 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

    ×