SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
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

Más contenido relacionado

Similar a 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 a 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
 

Más de India Scrum Enthusiasts Community

Más de 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
 

Último

Último (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
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
 
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...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

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