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.

Hands on BDD with cucumber - Agile Goa Sept 2013

1,398 views

Published on

Published in: Technology
  • Be the first to comment

Hands on BDD with cucumber - Agile Goa Sept 2013

  1. 1. Sonik Chopra PMI ACP, PMP Agile Coach, Manager Pitney Bowes Software Hands on BDD with Cucumber
  2. 2. Software Development:- Relay Race Customer Business Analyst Developer Tester
  3. 3. Team working in SILOS TOO MANY HANDOVERS DISCONNECTED SYSTEMS FOR REQMTS, TESTS AND DEVELOPMENT
  4. 4. Wrong Perception
  5. 5. Difference in thinking SITE LOCATION PLACE AREA LOCALITY DEV QA BA CLIENT PO Documents cannot ensure that software works.
  6. 6. What is Cucumber? • Serves as documentation, automated tests and development-aid - all rolled into one format. • Written by the team, in a language understood by all. • Cucumber is a Behaviour Driven Development tool.
  7. 7. Agenda • Introduction to BDD • Cucumber Features • Demo: The real power of Cucumber • Integration with different languages and platforms
  8. 8. Behaviour Driven Development Implementing an application by describing its behaviour by the perspective of its stakeholders.. Dan North
  9. 9. BDD – Outside In Pull Based VISION GOAL FEATURE STORY SCENARIO CODE
  10. 10. Scenarios and Examples in Ubiquitous Language HAVING CONVERSATION IS MORE IMPORTANT TALKING THROUGH EXAMPLES HELP DISCOVER CONSIDERS MULTIPLE STAKEHOLDERS
  11. 11. Cucumber at a glance… Written in plain English Language using Gherkin Source Code in Ruby Or Java Or Dot Net etc
  12. 12. Cucumber Example… Story: As a user I want to login with my details So that I can get access to the site Scenario: User uses wrong password Given a username 'jdoe' And a password 'letmein' When the user logs in with username and password Then the login form should be shown again GHERKIN LANGUAGE Gherkin Supports 40+ Languages.
  13. 13. DEMO of Cucumber Capabilities
  14. 14. Cucumber for Dot Net SpecFlow Iron Ruby Cuke4Nuke Cucumber for Java Cuke4Duke Webdriver tools Watir Selenium Mobile Android – Calabash IOS – Frank Win Phone Competitive products FIT/FITNESS Robot Framework Concordian EasyB JBehave Integration with other platforms
  15. 15. • TestBot Or Hydra : Tools used to run Cucumber tests in parallel. You can also use Jenkins and create slave machines. • Relish: A service to publish cucumber features as documentation • FactoryGirl GEM: Test Data Builder • Easy to Integrate with CI environment. Cucumber Add Ons
  16. 16. Summary • Cucumber is a BDD tool. • One stop shop for Requirements, Development, Scenarios and Acceptance test. • Written by the team, in a language understood by all. • Easy to integrate with different environments. • Supported in multiple languages and platforms.
  17. 17. Thank You Sonik Chopra PMI ACP, PMP Agile Coach, Manager Pitney Bowes Software sonikchopra@gmail.com http://in.linkedin.com/in/sonikchopra Twitter: @sonikchopra
  18. 18. Photo Credits • http://www.drinkingo.com/wp- content/uploads/2011/12/cucumber.jpg • http://t0.gstatic.com/images?q=tbn:ANd9GcT1FW_GP53v1b38wzb mZ569jzA1aooBpxG-vGl6fkB0YLRBMRbp • http://t1.gstatic.com/images?q=tbn:ANd9GcQAesiC- VaTAnisaVnVkF2xjEIC-ONQhX6adAWOWcTAZQFuDVVSjg • http://t2.gstatic.com/images?q=tbn:ANd9GcQrrJsV3DnQ- mLK6_uW_jWtU0tAitACM-GOPPxSoyDronBoQgIvKg • http://www.flickr.com/photos/heimatiater/3256903620/ • http://t2.gstatic.com/images?q=tbn:ANd9GcQrrJsV3DnQ- mLK6_uW_jWtU0tAitACM-GOPPxSoyDronBoQgIvKg • http://www.clker.com/clipart-software-box-4.html • http://soundbible.com/1203-Time-Bomb.html • http://www.confio.com/database-performance-for-devops/

×