Sonik Chopra
PMI ACP, PMP
Agile Coach, Manager
Pitney Bowes Software
Hands on BDD with Cucumber
Software Development:- Relay Race
Customer Business Analyst Developer
Tester
Team working in SILOS
TOO MANY HANDOVERS
DISCONNECTED SYSTEMS
FOR REQMTS, TESTS AND
DEVELOPMENT
Wrong Perception
Difference in thinking
SITE
LOCATION
PLACE
AREA
LOCALITY
DEV QA BA CLIENT PO
Documents cannot ensure
that software works.
What is Cucumber?
• Serves as documentation, automated tests
and development-aid - all rolled into one
format.
• Written b...
Agenda
• Introduction to BDD
• Cucumber Features
• Demo: The real power of Cucumber
• Integration with different languages...
Behaviour Driven Development
Implementing an application by describing its
behaviour by the perspective of its
stakeholder...
BDD – Outside In Pull Based
VISION
GOAL
FEATURE
STORY
SCENARIO
CODE
Scenarios and Examples in Ubiquitous Language
HAVING CONVERSATION IS
MORE IMPORTANT
TALKING THROUGH
EXAMPLES HELP DISCOVER...
Cucumber at a glance…
Written in plain
English Language using
Gherkin
Source Code in Ruby
Or Java Or Dot Net etc
Cucumber Example…
Story:
As a user
I want to login with my details
So that I can get access to the site
Scenario: User use...
DEMO of Cucumber Capabilities
Cucumber
for Dot Net
SpecFlow
Iron Ruby
Cuke4Nuke
Cucumber
for Java
Cuke4Duke
Webdriver
tools
Watir
Selenium
Mobile
Androi...
• TestBot Or Hydra : Tools used to run
Cucumber tests in parallel. You can also use
Jenkins and create slave machines.
• R...
Summary
• Cucumber is a BDD tool.
• One stop shop for
Requirements, Development, Scenarios and
Acceptance test.
• Written ...
Thank You
Sonik Chopra
PMI ACP, PMP
Agile Coach, Manager
Pitney Bowes Software
sonikchopra@gmail.com
http://in.linkedin.co...
Photo Credits
• http://www.drinkingo.com/wp-
content/uploads/2011/12/cucumber.jpg
• http://t0.gstatic.com/images?q=tbn:ANd...
Upcoming SlideShare
Loading in …5
×

Hands on BDD with cucumber - Agile Goa Sept 2013

1,224 views

Published on

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

No Downloads
Views
Total views
1,224
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
40
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

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/

×