SlideShare a Scribd company logo
1 of 17
Download to read offline
Cucumber Recipes
Sonik Chopra
PMI ACP, PMP
Agile Coach, Manager
Pitney Bowes Software
Agenda
• Introduction to BDD
• BDD Vs TDD
• Cucumber Features
• Demo: The real power of Cucumber
• Integration with different languages and
platforms
Behaviour Driven Development
Implementing an application by describing its
behaviour by the perspective of its
stakeholders..
Dan North
But don’t we already do this??
What we really do….
As a Retail Customer, I want to withdraw money
from my Account so that I can get Money.
Unit Tests
Should_Not_Dispense_When_the_ClientAccount_has_money_le
ssthan_minimum_amount()
Should_withdraw_Money_When_appropriate_Sum_Found()
Should_Not_Withdaw_Post_Expiry_Date()
Should_Withdraw_Post_Expiry_Date()
Should_Be_A_Valid_User()
Should_Not_Withdraw_When_Negative_Balance()
Should_Be_A_Valid_Account_Type()
Should_Return_Error_When_ATM_Is_Without_Cash()
Restricted view on Behaviour
Difference in thinking
CLIENT
CUSTOMER
BUYER
SHOPPER
PUNTER
DEV QA BA CLIENT PO
Increased Ambiguity  LOST
BDD – Outside In
VISION
GOAL
FEATURE
STORY
SCENARIO
CODE
Scenarios and Examples in Ubiquitous Language
HAVING CONVERSATION IS
MORE IMPORTANT
TALKING THROUGH
EXAMPLES HELP DISCOVER
CONSIDERS MULTIPLE
STAKEHOLDERS
BDD Vs TDD
• Development Methodology Vs Development
Technique
• Business Driven Vs Design Approach
• Customer Writing Tests Vs Developers writing
Tests
• Focus on Behavioural Aspect Vs
Implementation Aspect
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.
Cucumber at a glance…
Written in plain
English Language using
Gherkin
Source Code in Ruby
Or Java Or Dot Net etc
DEMO of Cucumber Capabilities
Cucumber
for Dot Net
SpecFlow
Iron Ruby
Cuke4Nuke
Cucumber
for Java
Cuke4Duke
Webdriver
tools
Watir
Selenium
Competitive
products
FIT/FITNESS
Robot
Framework
Concordian
EasyB
JBehave
Integration with other platforms
• 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
Thank You
Sonik Chopra
PMI ACP, PMP
Agile Coach, Manager
Pitney Bowes Software
sonikchopra@gmail.com
http://in.linkedin.com/in/sonikchopra
Twitter: @sonikchopra

More Related Content

Similar to Sgin2013 scrum startrek-cucumber recipes-sonikchopra

Agile Tour Pune 2015:Test automation using BDD - Anita Pol and Sachin Salvekar
Agile Tour Pune 2015:Test automation using BDD - Anita Pol and Sachin SalvekarAgile Tour Pune 2015:Test automation using BDD - Anita Pol and Sachin Salvekar
Agile Tour Pune 2015:Test automation using BDD - Anita Pol and Sachin Salvekar
India Scrum Enthusiasts Community
 
Jatin Soni Resume(Updated)
Jatin Soni Resume(Updated)Jatin Soni Resume(Updated)
Jatin Soni Resume(Updated)
Jatin Soni
 
Marketing Interview Resume
Marketing Interview ResumeMarketing Interview Resume
Marketing Interview Resume
praveen kumar
 

Similar to Sgin2013 scrum startrek-cucumber recipes-sonikchopra (20)

Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UXBehaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
 
Ohm
OhmOhm
Ohm
 
Intuit Partner Platform - APIs: Where Cloud Avenue and Main Street Meet
Intuit Partner Platform - APIs: Where Cloud Avenue and Main Street Meet Intuit Partner Platform - APIs: Where Cloud Avenue and Main Street Meet
Intuit Partner Platform - APIs: Where Cloud Avenue and Main Street Meet
 
Odoo Experience 2018 - Motivate Your Team with Weekly KPIs by Email
Odoo Experience 2018 - Motivate  Your Team with Weekly KPIs by EmailOdoo Experience 2018 - Motivate  Your Team with Weekly KPIs by Email
Odoo Experience 2018 - Motivate Your Team with Weekly KPIs by Email
 
Unlocking digital opportunity in Southeast Asia
Unlocking digital opportunity in Southeast AsiaUnlocking digital opportunity in Southeast Asia
Unlocking digital opportunity in Southeast Asia
 
Startup Pitching and Mobile App Startup
Startup Pitching and Mobile App StartupStartup Pitching and Mobile App Startup
Startup Pitching and Mobile App Startup
 
Epsilon Digital Assessment
Epsilon Digital AssessmentEpsilon Digital Assessment
Epsilon Digital Assessment
 
Agile Tour Pune 2015:Test automation using BDD - Anita Pol and Sachin Salvekar
Agile Tour Pune 2015:Test automation using BDD - Anita Pol and Sachin SalvekarAgile Tour Pune 2015:Test automation using BDD - Anita Pol and Sachin Salvekar
Agile Tour Pune 2015:Test automation using BDD - Anita Pol and Sachin Salvekar
 
CV-Chandra Shekhar 3011
CV-Chandra Shekhar 3011CV-Chandra Shekhar 3011
CV-Chandra Shekhar 3011
 
Masters Academy workshop BA User stories: be simple, be useful
Masters Academy workshop BA User stories: be simple, be usefulMasters Academy workshop BA User stories: be simple, be useful
Masters Academy workshop BA User stories: be simple, be useful
 
Startupmetrics 4 Pirates (Haas April, 2010)
Startupmetrics 4 Pirates (Haas April, 2010)Startupmetrics 4 Pirates (Haas April, 2010)
Startupmetrics 4 Pirates (Haas April, 2010)
 
Why should you start your web designing company in India?
Why should you start your web designing company in India?Why should you start your web designing company in India?
Why should you start your web designing company in India?
 
Automobile Garage management solution
Automobile Garage management solutionAutomobile Garage management solution
Automobile Garage management solution
 
Jatin Soni Resume(Updated)
Jatin Soni Resume(Updated)Jatin Soni Resume(Updated)
Jatin Soni Resume(Updated)
 
Resume1
Resume1Resume1
Resume1
 
Customer journey mapping workshop, 2017
Customer journey mapping workshop, 2017Customer journey mapping workshop, 2017
Customer journey mapping workshop, 2017
 
The Indian Digital Marketing Opportunity
The Indian Digital Marketing OpportunityThe Indian Digital Marketing Opportunity
The Indian Digital Marketing Opportunity
 
Bajibabu Resume
Bajibabu ResumeBajibabu Resume
Bajibabu Resume
 
How to Create a Business Plan Workshop
How to Create a Business Plan WorkshopHow to Create a Business Plan Workshop
How to Create a Business Plan Workshop
 
Marketing Interview Resume
Marketing Interview ResumeMarketing Interview Resume
Marketing Interview Resume
 

More from India Scrum Enthusiasts Community

More from India Scrum Enthusiasts Community (20)

Deciphering Agile Big Data
Deciphering Agile Big DataDeciphering Agile Big Data
Deciphering Agile Big Data
 
“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...
“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...
“How We Learnt to Stop Worrying and Live with Uncertainty” – Case Studies fro...
 
Rubber Meets the Road
Rubber Meets the RoadRubber Meets the Road
Rubber Meets the Road
 
Can Agile Enthusiasm See The Organization Through?
Can Agile Enthusiasm See The Organization Through?Can Agile Enthusiasm See The Organization Through?
Can Agile Enthusiasm See The Organization Through?
 
Agile​ ​HR​ ​From​ ​the​ ​trenches
Agile​ ​HR​ ​From​ ​the​ ​trenchesAgile​ ​HR​ ​From​ ​the​ ​trenches
Agile​ ​HR​ ​From​ ​the​ ​trenches
 
Evolutionary Change
Evolutionary ChangeEvolutionary Change
Evolutionary Change
 
Software 4.0 : “How” of Building Software Driven Business
Software 4.0 : “How” of Building Software Driven BusinessSoftware 4.0 : “How” of Building Software Driven Business
Software 4.0 : “How” of Building Software Driven Business
 
Agile Digital Architecture
Agile Digital ArchitectureAgile Digital Architecture
Agile Digital Architecture
 
Governance mechanism to further business agility
Governance mechanism to further business agilityGovernance mechanism to further business agility
Governance mechanism to further business agility
 
Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...
Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...
Opening the Mainframe world to Mobile Ecosystem in a seamless and beneficial ...
 
Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?
Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?
Workplace Happiness - Is Business Agility Taking us Towards Happy Workplaces?
 
Wave 2 of Agile: Agile Leadership Redefined
Wave 2 of Agile: Agile Leadership RedefinedWave 2 of Agile: Agile Leadership Redefined
Wave 2 of Agile: Agile Leadership Redefined
 
Agile Engineering Environment – 2017
Agile Engineering Environment – 2017Agile Engineering Environment – 2017
Agile Engineering Environment – 2017
 
Management for Agility and Outcomes
Management for Agility and OutcomesManagement for Agility and Outcomes
Management for Agility and Outcomes
 
Agile Mindset Shifting: Agile For All
Agile Mindset Shifting: Agile For AllAgile Mindset Shifting: Agile For All
Agile Mindset Shifting: Agile For All
 
Agile Engineering Environment – 2017
Agile Engineering Environment – 2017Agile Engineering Environment – 2017
Agile Engineering Environment – 2017
 
Wave 2 of Agile: Agile Leadership Redefined
Wave 2 of Agile: Agile Leadership RedefinedWave 2 of Agile: Agile Leadership Redefined
Wave 2 of Agile: Agile Leadership Redefined
 
Five (Oops!) Six Mistakes You are Making as a Leader
Five (Oops!) Six Mistakes You are Making as a LeaderFive (Oops!) Six Mistakes You are Making as a Leader
Five (Oops!) Six Mistakes You are Making as a Leader
 
Empower the Forbidden Power Players
Empower the Forbidden Power PlayersEmpower the Forbidden Power Players
Empower the Forbidden Power Players
 
Agility in Education System for Digital India
Agility in Education System for Digital IndiaAgility in Education System for Digital India
Agility in Education System for Digital India
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Recently uploaded (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Sgin2013 scrum startrek-cucumber recipes-sonikchopra

  • 1. Cucumber Recipes Sonik Chopra PMI ACP, PMP Agile Coach, Manager Pitney Bowes Software
  • 2. Agenda • Introduction to BDD • BDD Vs TDD • Cucumber Features • Demo: The real power of Cucumber • Integration with different languages and platforms
  • 3. Behaviour Driven Development Implementing an application by describing its behaviour by the perspective of its stakeholders.. Dan North
  • 4. But don’t we already do this??
  • 5. What we really do…. As a Retail Customer, I want to withdraw money from my Account so that I can get Money. Unit Tests Should_Not_Dispense_When_the_ClientAccount_has_money_le ssthan_minimum_amount() Should_withdraw_Money_When_appropriate_Sum_Found() Should_Not_Withdaw_Post_Expiry_Date() Should_Withdraw_Post_Expiry_Date() Should_Be_A_Valid_User() Should_Not_Withdraw_When_Negative_Balance() Should_Be_A_Valid_Account_Type() Should_Return_Error_When_ATM_Is_Without_Cash()
  • 6. Restricted view on Behaviour
  • 9. BDD – Outside In VISION GOAL FEATURE STORY SCENARIO CODE
  • 10. Scenarios and Examples in Ubiquitous Language HAVING CONVERSATION IS MORE IMPORTANT TALKING THROUGH EXAMPLES HELP DISCOVER CONSIDERS MULTIPLE STAKEHOLDERS
  • 11. BDD Vs TDD • Development Methodology Vs Development Technique • Business Driven Vs Design Approach • Customer Writing Tests Vs Developers writing Tests • Focus on Behavioural Aspect Vs Implementation Aspect
  • 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. Cucumber at a glance… Written in plain English Language using Gherkin Source Code in Ruby Or Java Or Dot Net etc
  • 14. DEMO of Cucumber Capabilities
  • 15. Cucumber for Dot Net SpecFlow Iron Ruby Cuke4Nuke Cucumber for Java Cuke4Duke Webdriver tools Watir Selenium Competitive products FIT/FITNESS Robot Framework Concordian EasyB JBehave Integration with other platforms
  • 16. • 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
  • 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