SlideShare ist ein Scribd-Unternehmen logo
1 von 18
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 by the team, in a language
understood by all.
• Cucumber is a Behaviour Driven Development
tool.
Agenda
• Introduction to BDD
• 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
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
CONSIDERS MULTIPLE
STAKEHOLDERS
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 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.
DEMO of Cucumber Capabilities
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
• 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
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.
Thank You
Sonik Chopra
PMI ACP, PMP
Agile Coach, Manager
Pitney Bowes Software
sonikchopra@gmail.com
http://in.linkedin.com/in/sonikchopra
Twitter: @sonikchopra
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/

Weitere ähnliche Inhalte

Was ist angesagt?

Bdd – with cucumber and gherkin
Bdd – with cucumber and gherkinBdd – with cucumber and gherkin
Bdd – with cucumber and gherkinArati Joshi
 
Cypress test techniques cucumber bdd framework,tdd,api tests course
Cypress test techniques cucumber bdd framework,tdd,api tests courseCypress test techniques cucumber bdd framework,tdd,api tests course
Cypress test techniques cucumber bdd framework,tdd,api tests courseNarayanan Palani
 
Behaviour driven development aka bdd
Behaviour driven development aka bddBehaviour driven development aka bdd
Behaviour driven development aka bddPrince Gupta
 
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)Alvaro Sanchez-Mariscal
 
Automated testing in javascript
Automated testing in javascriptAutomated testing in javascript
Automated testing in javascriptMichael Yagudaev
 
Automated Acceptance Tests & Tool choice
Automated Acceptance Tests & Tool choiceAutomated Acceptance Tests & Tool choice
Automated Acceptance Tests & Tool choicetoddbr
 
Cypress Test Techniques-Cucumber BDD Framework,TDD,API Tests
Cypress Test Techniques-Cucumber BDD Framework,TDD,API TestsCypress Test Techniques-Cucumber BDD Framework,TDD,API Tests
Cypress Test Techniques-Cucumber BDD Framework,TDD,API TestsHiraQureshi22
 
Integration of automation framework with ci tools
Integration of automation framework with ci toolsIntegration of automation framework with ci tools
Integration of automation framework with ci toolsvodQA
 
Mobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appiumMobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appiumSelenium Cucumber
 
Test Automation Framework using Cucumber BDD Overview - part 2
Test Automation Framework using Cucumber BDD Overview - part 2Test Automation Framework using Cucumber BDD Overview - part 2
Test Automation Framework using Cucumber BDD Overview - part 2Mindfire Solutions
 
Swagger for-your-api
Swagger for-your-apiSwagger for-your-api
Swagger for-your-apiTony Tam
 
Swagger APIs for Humans and Robots (Gluecon)
Swagger APIs for Humans and Robots (Gluecon)Swagger APIs for Humans and Robots (Gluecon)
Swagger APIs for Humans and Robots (Gluecon)Tony Tam
 
Introduction to cypress in Angular (Chinese)
Introduction to cypress in Angular (Chinese)Introduction to cypress in Angular (Chinese)
Introduction to cypress in Angular (Chinese)Hong Tat Yew
 
Implement Web API with Swagger
Implement Web API with SwaggerImplement Web API with Swagger
Implement Web API with SwaggerJiang Wu
 
Google App Engine - Java Style
Google App Engine - Java StyleGoogle App Engine - Java Style
Google App Engine - Java StylePeter Lind
 

Was ist angesagt? (20)

Gherkin /BDD intro
Gherkin /BDD introGherkin /BDD intro
Gherkin /BDD intro
 
Cucumber presenation
Cucumber presenationCucumber presenation
Cucumber presenation
 
Cucumber & gherkin language
Cucumber & gherkin languageCucumber & gherkin language
Cucumber & gherkin language
 
Bdd – with cucumber and gherkin
Bdd – with cucumber and gherkinBdd – with cucumber and gherkin
Bdd – with cucumber and gherkin
 
Cypress test techniques cucumber bdd framework,tdd,api tests course
Cypress test techniques cucumber bdd framework,tdd,api tests courseCypress test techniques cucumber bdd framework,tdd,api tests course
Cypress test techniques cucumber bdd framework,tdd,api tests course
 
Behaviour driven development aka bdd
Behaviour driven development aka bddBehaviour driven development aka bdd
Behaviour driven development aka bdd
 
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)
DevQA: make your testers happier with Groovy, Spock and Geb (Greach 2014)
 
Automated testing in javascript
Automated testing in javascriptAutomated testing in javascript
Automated testing in javascript
 
BDD for APIs
BDD for APIsBDD for APIs
BDD for APIs
 
Automated Acceptance Tests & Tool choice
Automated Acceptance Tests & Tool choiceAutomated Acceptance Tests & Tool choice
Automated Acceptance Tests & Tool choice
 
Cypress Test Techniques-Cucumber BDD Framework,TDD,API Tests
Cypress Test Techniques-Cucumber BDD Framework,TDD,API TestsCypress Test Techniques-Cucumber BDD Framework,TDD,API Tests
Cypress Test Techniques-Cucumber BDD Framework,TDD,API Tests
 
Integration of automation framework with ci tools
Integration of automation framework with ci toolsIntegration of automation framework with ci tools
Integration of automation framework with ci tools
 
Mobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appiumMobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appium
 
Test Automation Framework using Cucumber BDD Overview - part 2
Test Automation Framework using Cucumber BDD Overview - part 2Test Automation Framework using Cucumber BDD Overview - part 2
Test Automation Framework using Cucumber BDD Overview - part 2
 
Swagger for-your-api
Swagger for-your-apiSwagger for-your-api
Swagger for-your-api
 
Swagger APIs for Humans and Robots (Gluecon)
Swagger APIs for Humans and Robots (Gluecon)Swagger APIs for Humans and Robots (Gluecon)
Swagger APIs for Humans and Robots (Gluecon)
 
Introduction to cypress in Angular (Chinese)
Introduction to cypress in Angular (Chinese)Introduction to cypress in Angular (Chinese)
Introduction to cypress in Angular (Chinese)
 
Bdd in action
Bdd in actionBdd in action
Bdd in action
 
Implement Web API with Swagger
Implement Web API with SwaggerImplement Web API with Swagger
Implement Web API with Swagger
 
Google App Engine - Java Style
Google App Engine - Java StyleGoogle App Engine - Java Style
Google App Engine - Java Style
 

Ähnlich wie Hands on BDD with cucumber - Agile Goa Sept 2013

Consider Starting Small
Consider Starting SmallConsider Starting Small
Consider Starting SmallAndrew Smith
 
java internshijnkjgkyhjytrctgjngp ppt.pdf
java internshijnkjgkyhjytrctgjngp ppt.pdfjava internshijnkjgkyhjytrctgjngp ppt.pdf
java internshijnkjgkyhjytrctgjngp ppt.pdframkishun1711
 
App42 Student Lab - Android Game Dev Series V 0.1
App42 Student Lab - Android Game Dev Series V 0.1App42 Student Lab - Android Game Dev Series V 0.1
App42 Student Lab - Android Game Dev Series V 0.1ShepHertz
 
Behavior Driven Development - TdT@Cluj #15
Behavior Driven Development - TdT@Cluj #15Behavior Driven Development - TdT@Cluj #15
Behavior Driven Development - TdT@Cluj #15Tabăra de Testare
 
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...AgileNetwork
 
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...AgileNetwork
 
Understanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliveryUnderstanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliverySwapnil Jain
 
HyperZoom by TNO
HyperZoom by TNOHyperZoom by TNO
HyperZoom by TNOTNO
 
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...Heiko Voigt
 
From Sandbox to Production by Vadym Fedorov
From Sandbox to Production by Vadym FedorovFrom Sandbox to Production by Vadym Fedorov
From Sandbox to Production by Vadym FedorovSoftServe
 
Deal with the dilemma of hybrid and native
Deal with the dilemma of hybrid and nativeDeal with the dilemma of hybrid and native
Deal with the dilemma of hybrid and nativeswamileo1
 
Introduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App DevelopmentIntroduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App DevelopmentÖzcan Zafer AYAN
 
Abhishek Tomar_9.5 Years_Localization Testing
Abhishek Tomar_9.5 Years_Localization TestingAbhishek Tomar_9.5 Years_Localization Testing
Abhishek Tomar_9.5 Years_Localization TestingAbhishek Tomar
 
Hyper Zoom By TNO
Hyper Zoom By TNOHyper Zoom By TNO
Hyper Zoom By TNOguest38ae54
 
Lets cook cucumber !!
Lets cook cucumber !!Lets cook cucumber !!
Lets cook cucumber !!vodQA
 
From the sandbox to production
From the sandbox to productionFrom the sandbox to production
From the sandbox to productionVadym Fedorov
 
Best Practices - chapter #4 - Web UI development and Bonita infrastructure setup
Best Practices - chapter #4 - Web UI development and Bonita infrastructure setupBest Practices - chapter #4 - Web UI development and Bonita infrastructure setup
Best Practices - chapter #4 - Web UI development and Bonita infrastructure setupBonitasoft
 

Ähnlich wie Hands on BDD with cucumber - Agile Goa Sept 2013 (20)

SGIN2013-ScrumStartRek-CucumberRecipes-SonikChopra
SGIN2013-ScrumStartRek-CucumberRecipes-SonikChopraSGIN2013-ScrumStartRek-CucumberRecipes-SonikChopra
SGIN2013-ScrumStartRek-CucumberRecipes-SonikChopra
 
Consider Starting Small
Consider Starting SmallConsider Starting Small
Consider Starting Small
 
java internshijnkjgkyhjytrctgjngp ppt.pdf
java internshijnkjgkyhjytrctgjngp ppt.pdfjava internshijnkjgkyhjytrctgjngp ppt.pdf
java internshijnkjgkyhjytrctgjngp ppt.pdf
 
App42 Student Lab - Android Game Dev Series V 0.1
App42 Student Lab - Android Game Dev Series V 0.1App42 Student Lab - Android Game Dev Series V 0.1
App42 Student Lab - Android Game Dev Series V 0.1
 
Behavior Driven Development - TdT@Cluj #15
Behavior Driven Development - TdT@Cluj #15Behavior Driven Development - TdT@Cluj #15
Behavior Driven Development - TdT@Cluj #15
 
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...
 
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...
Agile Network India | Experiences in the Implementation of BDD / FDD | Supriy...
 
Understanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliveryUnderstanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous Delivery
 
HyperZoom by TNO
HyperZoom by TNOHyperZoom by TNO
HyperZoom by TNO
 
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
 
From Sandbox to Production by Vadym Fedorov
From Sandbox to Production by Vadym FedorovFrom Sandbox to Production by Vadym Fedorov
From Sandbox to Production by Vadym Fedorov
 
Deal with the dilemma of hybrid and native
Deal with the dilemma of hybrid and nativeDeal with the dilemma of hybrid and native
Deal with the dilemma of hybrid and native
 
Introduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App DevelopmentIntroduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App Development
 
Abhishek Tomar_9.5 Years_Localization Testing
Abhishek Tomar_9.5 Years_Localization TestingAbhishek Tomar_9.5 Years_Localization Testing
Abhishek Tomar_9.5 Years_Localization Testing
 
Hyper Zoom By TNO
Hyper Zoom By TNOHyper Zoom By TNO
Hyper Zoom By TNO
 
Lets cook cucumber !!
Lets cook cucumber !!Lets cook cucumber !!
Lets cook cucumber !!
 
From the sandbox to production
From the sandbox to productionFrom the sandbox to production
From the sandbox to production
 
SHESHANK_DASARI
SHESHANK_DASARISHESHANK_DASARI
SHESHANK_DASARI
 
CV
CVCV
CV
 
Best Practices - chapter #4 - Web UI development and Bonita infrastructure setup
Best Practices - chapter #4 - Web UI development and Bonita infrastructure setupBest Practices - chapter #4 - Web UI development and Bonita infrastructure setup
Best Practices - chapter #4 - Web UI development and Bonita infrastructure setup
 

Kürzlich hochgeladen

Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 

Kürzlich hochgeladen (20)

Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 

Hands on BDD with cucumber - Agile Goa Sept 2013

  • 1. Sonik Chopra PMI ACP, PMP Agile Coach, Manager Pitney Bowes Software Hands on BDD with Cucumber
  • 2. Software Development:- Relay Race Customer Business Analyst Developer Tester
  • 3. Team working in SILOS TOO MANY HANDOVERS DISCONNECTED SYSTEMS FOR REQMTS, TESTS AND DEVELOPMENT
  • 5. Difference in thinking SITE LOCATION PLACE AREA LOCALITY DEV QA BA CLIENT PO Documents cannot ensure that software works.
  • 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. Agenda • Introduction to BDD • Cucumber Features • Demo: The real power of Cucumber • Integration with different languages and platforms
  • 8. Behaviour Driven Development Implementing an application by describing its behaviour by the perspective of its stakeholders.. Dan North
  • 9. BDD – Outside In Pull Based 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. Cucumber at a glance… Written in plain English Language using Gherkin Source Code in Ruby Or Java Or Dot Net etc
  • 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. DEMO of Cucumber Capabilities
  • 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. • 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. 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. 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. 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/