SlideShare a Scribd company logo
1 of 39
Download to read offline
Jon Kruger
Twitter // @JonKruger
Email // jon@jonkruger.com
Blog // http://jonkruger.com
For anyone who cares about acceptance testing
tools and practices
 1st Thursday of every month during lunch




Google “columbus atdd”
How is QA going to test the feature?
How do developers know when they’re done?
How can developers help QA?
Given I am a logged in user
When I go to the final checkout page
Then I should see the total cost of the order broken
down by product cost, tax, and shipping charges
And I should see the total cost of the order

The “Gherkin” syntax
Given I am a logged in user
When I go to the final checkout page
Then I should see the total cost of the order broken down
by product cost, tax, and shipping charges
And I should see the total cost of the order
Order total = total cost of products on the order + tax +
shipping charges
 Tax:


 Ohio = 7%
 Michigan = 6.5%
 Other states = 0%



Shipping:

 If total cost of products (before tax >= $25), shipping is free, otherwise
$5
Given I am a logged in user
When I go to the final checkout page
Then I should see the total cost of the order broken down
by product cost, tax, and shipping charges
And I should see the total cost of the order
Order total = total cost of products on the order + tax +
shipping charges
 Tax:











Based on the shipping address, not the billing address
Tax charged on the sum of the cost of the products
Ohio = 7%
Michigan = 6.5%
Other states (including DC) = 0%
No shipping internationally

Shipping:

 If total cost of products (before tax) >= $25, shipping is free, otherwise
$5
We’ll test the following scenarios:
Order with multiple products
 Ship to OH, MI, DC
 Unit tests to verify tax calculation for all 51 states
 Shipping < $25, = $25, > $25
 Verify order totals

Products

Tax

Shipping

Order with one product

Ship to Ohio (7% tax)

Cost of product = $24.99
(shipping is $5)

Order with one product

Ship to Michigan (6.5%
tax)

Cost of product = $25
(shipping is free)

Order with multiple
products

Ship to DC, billing address
is Ohio (0% tax)

Cost of products = $25.01
(shipping is free)

Verifications
Total cost = sum of cost of products + tax + shipping
Scenario: Order with one product, ship to OH, total
product cost < $25
Given I am a logged in user
And the shopping cart is empty
And I add a product costing $24.99 to the cart
And my shipping state is OH
And my billing state is OH
When I go to the final checkout page
Then the tax amount should be $1.75
And the shipping amount should be $5.00
And the order total should be $31.74
Break things into small chunks
 Insist on acceptance criteria being complete before
development begins
 “3 Amigos” is not just a meeting
 Remember the end goal – defined acceptance
criteria and shared knowledge

=
Working Tested Features
=
In Production (or ready to go to
production)
We go faster
 QA people moving into analyst roles
 QA people asking devs to automate testing for them
 Automated tests driving quality
 Rolling out ATDD to other teams

Address shared pain (QA and devs dealing with
incomplete requirements)
 Developers tell QA how they tested their code
 Show that there is a problem (e.g. lots of time spent
fixing bugs)
 Have developers help test when QA is behind
 Insist on acceptance criteria (regardless of who
writes it)
 Change your metrics
 Make incremental progress

Slides:
http://jonkruger.com/,
click on Presentations

Email: jon@jonkruger.com
Twitter: @JonKruger
Blog: http://jonkruger.com

More Related Content

Viewers also liked

Hilary Weaver - He Doesn't Like You
Hilary Weaver  - He Doesn't Like YouHilary Weaver  - He Doesn't Like You
Hilary Weaver - He Doesn't Like YouQA or the Highway
 
Matt Heusser - Keynote - Cool New Things... and some old ones too
Matt Heusser - Keynote - Cool New Things... and some old ones tooMatt Heusser - Keynote - Cool New Things... and some old ones too
Matt Heusser - Keynote - Cool New Things... and some old ones tooQA or the Highway
 
Dmitry sharkov - Maturing Your Cucumber Suites
Dmitry sharkov   - Maturing Your Cucumber SuitesDmitry sharkov   - Maturing Your Cucumber Suites
Dmitry sharkov - Maturing Your Cucumber SuitesQA or the Highway
 
Indice de e clesiología del cvii
Indice de e clesiología del cviiIndice de e clesiología del cvii
Indice de e clesiología del cviiTeologos De la Sat
 
Val lines - Agile Testing in a Legacy World
Val lines  - Agile Testing in a Legacy WorldVal lines  - Agile Testing in a Legacy World
Val lines - Agile Testing in a Legacy WorldQA or the Highway
 
Matt Eakin - The New Tester Skillset
Matt Eakin - The New Tester SkillsetMatt Eakin - The New Tester Skillset
Matt Eakin - The New Tester SkillsetQA or the Highway
 
MARIE FRANCE BEGUE, APACIGUAR LA MEMORIA
MARIE FRANCE BEGUE, APACIGUAR LA MEMORIAMARIE FRANCE BEGUE, APACIGUAR LA MEMORIA
MARIE FRANCE BEGUE, APACIGUAR LA MEMORIATeologos De la Sat
 
Building Competency Through Confidence by Joseph Ours
Building Competency Through Confidence by Joseph OursBuilding Competency Through Confidence by Joseph Ours
Building Competency Through Confidence by Joseph OursQA or the Highway
 
Tom walton - Jelly Beans And Software Verification
Tom walton - Jelly Beans And Software VerificationTom walton - Jelly Beans And Software Verification
Tom walton - Jelly Beans And Software VerificationQA or the Highway
 
Joseph Ours - The Scourge Of Testing: Test Data Management
Joseph Ours - The Scourge Of Testing: Test Data ManagementJoseph Ours - The Scourge Of Testing: Test Data Management
Joseph Ours - The Scourge Of Testing: Test Data ManagementQA or the Highway
 
A Paradigm Shift by Dmitry Sharkov
A Paradigm Shift by Dmitry SharkovA Paradigm Shift by Dmitry Sharkov
A Paradigm Shift by Dmitry SharkovQA or the Highway
 
Discover the Power of Pair Testing - Pradeepa Narayanaswamy
Discover the Power of Pair Testing - Pradeepa NarayanaswamyDiscover the Power of Pair Testing - Pradeepa Narayanaswamy
Discover the Power of Pair Testing - Pradeepa NarayanaswamyQA or the Highway
 
Developing a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian BayerDeveloping a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian BayerQA or the Highway
 
Training for Automated Testing - Kelsey Shannahan
Training for Automated Testing - Kelsey ShannahanTraining for Automated Testing - Kelsey Shannahan
Training for Automated Testing - Kelsey ShannahanQA or the Highway
 

Viewers also liked (15)

Hilary Weaver - He Doesn't Like You
Hilary Weaver  - He Doesn't Like YouHilary Weaver  - He Doesn't Like You
Hilary Weaver - He Doesn't Like You
 
AVENATTI - HOSPITALIDAD
AVENATTI - HOSPITALIDADAVENATTI - HOSPITALIDAD
AVENATTI - HOSPITALIDAD
 
Matt Heusser - Keynote - Cool New Things... and some old ones too
Matt Heusser - Keynote - Cool New Things... and some old ones tooMatt Heusser - Keynote - Cool New Things... and some old ones too
Matt Heusser - Keynote - Cool New Things... and some old ones too
 
Dmitry sharkov - Maturing Your Cucumber Suites
Dmitry sharkov   - Maturing Your Cucumber SuitesDmitry sharkov   - Maturing Your Cucumber Suites
Dmitry sharkov - Maturing Your Cucumber Suites
 
Indice de e clesiología del cvii
Indice de e clesiología del cviiIndice de e clesiología del cvii
Indice de e clesiología del cvii
 
Val lines - Agile Testing in a Legacy World
Val lines  - Agile Testing in a Legacy WorldVal lines  - Agile Testing in a Legacy World
Val lines - Agile Testing in a Legacy World
 
Matt Eakin - The New Tester Skillset
Matt Eakin - The New Tester SkillsetMatt Eakin - The New Tester Skillset
Matt Eakin - The New Tester Skillset
 
MARIE FRANCE BEGUE, APACIGUAR LA MEMORIA
MARIE FRANCE BEGUE, APACIGUAR LA MEMORIAMARIE FRANCE BEGUE, APACIGUAR LA MEMORIA
MARIE FRANCE BEGUE, APACIGUAR LA MEMORIA
 
Building Competency Through Confidence by Joseph Ours
Building Competency Through Confidence by Joseph OursBuilding Competency Through Confidence by Joseph Ours
Building Competency Through Confidence by Joseph Ours
 
Tom walton - Jelly Beans And Software Verification
Tom walton - Jelly Beans And Software VerificationTom walton - Jelly Beans And Software Verification
Tom walton - Jelly Beans And Software Verification
 
Joseph Ours - The Scourge Of Testing: Test Data Management
Joseph Ours - The Scourge Of Testing: Test Data ManagementJoseph Ours - The Scourge Of Testing: Test Data Management
Joseph Ours - The Scourge Of Testing: Test Data Management
 
A Paradigm Shift by Dmitry Sharkov
A Paradigm Shift by Dmitry SharkovA Paradigm Shift by Dmitry Sharkov
A Paradigm Shift by Dmitry Sharkov
 
Discover the Power of Pair Testing - Pradeepa Narayanaswamy
Discover the Power of Pair Testing - Pradeepa NarayanaswamyDiscover the Power of Pair Testing - Pradeepa Narayanaswamy
Discover the Power of Pair Testing - Pradeepa Narayanaswamy
 
Developing a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian BayerDeveloping a test automation strategy by Brian Bayer
Developing a test automation strategy by Brian Bayer
 
Training for Automated Testing - Kelsey Shannahan
Training for Automated Testing - Kelsey ShannahanTraining for Automated Testing - Kelsey Shannahan
Training for Automated Testing - Kelsey Shannahan
 

Similar to ATDD Lunch & Learn - Order Testing Scenarios

Developing an Automated Testing Strategy
Developing an Automated Testing StrategyDeveloping an Automated Testing Strategy
Developing an Automated Testing StrategyJon Kruger
 
FBAM_Class_3_Batch-5_(Product_Sourcing) (1).pptx
FBAM_Class_3_Batch-5_(Product_Sourcing) (1).pptxFBAM_Class_3_Batch-5_(Product_Sourcing) (1).pptx
FBAM_Class_3_Batch-5_(Product_Sourcing) (1).pptxburhanmian9
 
Data-Driven Decision Making by Expedia Sr PM
Data-Driven Decision Making by Expedia Sr PMData-Driven Decision Making by Expedia Sr PM
Data-Driven Decision Making by Expedia Sr PMProduct School
 
Taming The HiPPO
Taming The HiPPOTaming The HiPPO
Taming The HiPPOGoogle A/NZ
 
Conversion Optimization Breakfast Workshop
Conversion Optimization Breakfast Workshop Conversion Optimization Breakfast Workshop
Conversion Optimization Breakfast Workshop Optimizely
 
Anton Muzhailo - Practical Test Process Improvement using ISTQB
Anton Muzhailo - Practical Test Process Improvement using ISTQBAnton Muzhailo - Practical Test Process Improvement using ISTQB
Anton Muzhailo - Practical Test Process Improvement using ISTQBIevgenii Katsan
 
How to Ditch your Timeline Roadmap for Good
How to Ditch your Timeline Roadmap for GoodHow to Ditch your Timeline Roadmap for Good
How to Ditch your Timeline Roadmap for GoodJanna Bastow
 
Counseling vsm presentation_7-20-2011
Counseling vsm presentation_7-20-2011Counseling vsm presentation_7-20-2011
Counseling vsm presentation_7-20-2011laukoamy
 
Why We Test - Rethinking Your Approach
Why We Test - Rethinking Your ApproachWhy We Test - Rethinking Your Approach
Why We Test - Rethinking Your Approachaudreybloemer
 
QMS Calibration Powerpoint
QMS Calibration PowerpointQMS Calibration Powerpoint
QMS Calibration PowerpointDennis J Morgan
 
C-Suite Snacks Webinar Series: Reducing Risk and Cost in the Global Supply Chain
C-Suite Snacks Webinar Series: Reducing Risk and Cost in the Global Supply ChainC-Suite Snacks Webinar Series: Reducing Risk and Cost in the Global Supply Chain
C-Suite Snacks Webinar Series: Reducing Risk and Cost in the Global Supply ChainCitrin Cooperman
 
Auditing Manufacturing Process and Product and Process Information.pdf
Auditing Manufacturing Process and Product and Process Information.pdfAuditing Manufacturing Process and Product and Process Information.pdf
Auditing Manufacturing Process and Product and Process Information.pdfDr. Dinesh Mehta
 
Small Parcel Freight Auditing
Small Parcel Freight AuditingSmall Parcel Freight Auditing
Small Parcel Freight Auditingsmisovic
 
Introduction to Conversion Optimization - Nelio A/B Testing for WordPress
Introduction to Conversion Optimization - Nelio A/B Testing for WordPressIntroduction to Conversion Optimization - Nelio A/B Testing for WordPress
Introduction to Conversion Optimization - Nelio A/B Testing for WordPressNelio Software
 
BlueSnap Presentation
BlueSnap PresentationBlueSnap Presentation
BlueSnap PresentationPYMNTS.com
 

Similar to ATDD Lunch & Learn - Order Testing Scenarios (20)

Developing an Automated Testing Strategy
Developing an Automated Testing StrategyDeveloping an Automated Testing Strategy
Developing an Automated Testing Strategy
 
Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven Development
 
FBAM_Class_3_Batch-5_(Product_Sourcing) (1).pptx
FBAM_Class_3_Batch-5_(Product_Sourcing) (1).pptxFBAM_Class_3_Batch-5_(Product_Sourcing) (1).pptx
FBAM_Class_3_Batch-5_(Product_Sourcing) (1).pptx
 
Testing plan for an ecommerce site
Testing plan for an ecommerce siteTesting plan for an ecommerce site
Testing plan for an ecommerce site
 
Data-Driven Decision Making by Expedia Sr PM
Data-Driven Decision Making by Expedia Sr PMData-Driven Decision Making by Expedia Sr PM
Data-Driven Decision Making by Expedia Sr PM
 
Taming The HiPPO
Taming The HiPPOTaming The HiPPO
Taming The HiPPO
 
Conversion Optimization Breakfast Workshop
Conversion Optimization Breakfast Workshop Conversion Optimization Breakfast Workshop
Conversion Optimization Breakfast Workshop
 
Management Review
Management ReviewManagement Review
Management Review
 
Core Knowledge about QMS
Core Knowledge about QMSCore Knowledge about QMS
Core Knowledge about QMS
 
Anton Muzhailo - Practical Test Process Improvement using ISTQB
Anton Muzhailo - Practical Test Process Improvement using ISTQBAnton Muzhailo - Practical Test Process Improvement using ISTQB
Anton Muzhailo - Practical Test Process Improvement using ISTQB
 
How to Ditch your Timeline Roadmap for Good
How to Ditch your Timeline Roadmap for GoodHow to Ditch your Timeline Roadmap for Good
How to Ditch your Timeline Roadmap for Good
 
Counseling vsm presentation_7-20-2011
Counseling vsm presentation_7-20-2011Counseling vsm presentation_7-20-2011
Counseling vsm presentation_7-20-2011
 
Why We Test - Rethinking Your Approach
Why We Test - Rethinking Your ApproachWhy We Test - Rethinking Your Approach
Why We Test - Rethinking Your Approach
 
QMS Calibration Powerpoint
QMS Calibration PowerpointQMS Calibration Powerpoint
QMS Calibration Powerpoint
 
C-Suite Snacks Webinar Series: Reducing Risk and Cost in the Global Supply Chain
C-Suite Snacks Webinar Series: Reducing Risk and Cost in the Global Supply ChainC-Suite Snacks Webinar Series: Reducing Risk and Cost in the Global Supply Chain
C-Suite Snacks Webinar Series: Reducing Risk and Cost in the Global Supply Chain
 
Auditing Manufacturing Process and Product and Process Information.pdf
Auditing Manufacturing Process and Product and Process Information.pdfAuditing Manufacturing Process and Product and Process Information.pdf
Auditing Manufacturing Process and Product and Process Information.pdf
 
Small Parcel Freight Auditing
Small Parcel Freight AuditingSmall Parcel Freight Auditing
Small Parcel Freight Auditing
 
Introduction to Conversion Optimization - Nelio A/B Testing for WordPress
Introduction to Conversion Optimization - Nelio A/B Testing for WordPressIntroduction to Conversion Optimization - Nelio A/B Testing for WordPress
Introduction to Conversion Optimization - Nelio A/B Testing for WordPress
 
BlueSnap Presentation
BlueSnap PresentationBlueSnap Presentation
BlueSnap Presentation
 
QA overview
QA overviewQA overview
QA overview
 

More from QA or the Highway

KrishnaToolComparisionPPT.pdf
KrishnaToolComparisionPPT.pdfKrishnaToolComparisionPPT.pdf
KrishnaToolComparisionPPT.pdfQA or the Highway
 
Ravi Lakkavalli - World Quality Report.pptx
Ravi Lakkavalli - World Quality Report.pptxRavi Lakkavalli - World Quality Report.pptx
Ravi Lakkavalli - World Quality Report.pptxQA or the Highway
 
Caleb Crandall - Testing Between the Buckets.pptx
Caleb Crandall - Testing Between the Buckets.pptxCaleb Crandall - Testing Between the Buckets.pptx
Caleb Crandall - Testing Between the Buckets.pptxQA or the Highway
 
Thomas Haver - Mobile Testing.pdf
Thomas Haver - Mobile Testing.pdfThomas Haver - Mobile Testing.pdf
Thomas Haver - Mobile Testing.pdfQA or the Highway
 
Thomas Haver - Example Mapping.pdf
Thomas Haver - Example Mapping.pdfThomas Haver - Example Mapping.pdf
Thomas Haver - Example Mapping.pdfQA or the Highway
 
Joe Colantonio - Actionable Automation Awesomeness in Testing Farm.pdf
Joe Colantonio - Actionable Automation Awesomeness in Testing Farm.pdfJoe Colantonio - Actionable Automation Awesomeness in Testing Farm.pdf
Joe Colantonio - Actionable Automation Awesomeness in Testing Farm.pdfQA or the Highway
 
Sarah Geisinger - Continious Testing Metrics That Matter.pdf
Sarah Geisinger - Continious Testing Metrics That Matter.pdfSarah Geisinger - Continious Testing Metrics That Matter.pdf
Sarah Geisinger - Continious Testing Metrics That Matter.pdfQA or the Highway
 
Jeff Sing - Quarterly Service Delivery Reviews.pdf
Jeff Sing - Quarterly Service Delivery Reviews.pdfJeff Sing - Quarterly Service Delivery Reviews.pdf
Jeff Sing - Quarterly Service Delivery Reviews.pdfQA or the Highway
 
Leandro Melendez - Chihuahua Load Tests.pdf
Leandro Melendez - Chihuahua Load Tests.pdfLeandro Melendez - Chihuahua Load Tests.pdf
Leandro Melendez - Chihuahua Load Tests.pdfQA or the Highway
 
Rick Clymer - Incident Management.pdf
Rick Clymer - Incident Management.pdfRick Clymer - Incident Management.pdf
Rick Clymer - Incident Management.pdfQA or the Highway
 
Robert Fornal - ChatGPT as a Testing Tool.pptx
Robert Fornal - ChatGPT as a Testing Tool.pptxRobert Fornal - ChatGPT as a Testing Tool.pptx
Robert Fornal - ChatGPT as a Testing Tool.pptxQA or the Highway
 
Federico Toledo - Extra-functional testing.pdf
Federico Toledo - Extra-functional testing.pdfFederico Toledo - Extra-functional testing.pdf
Federico Toledo - Extra-functional testing.pdfQA or the Highway
 
Andrew Knight - Managing the Test Data Nightmare.pptx
Andrew Knight - Managing the Test Data Nightmare.pptxAndrew Knight - Managing the Test Data Nightmare.pptx
Andrew Knight - Managing the Test Data Nightmare.pptxQA or the Highway
 
Melissa Tondi - Automation We_re Doing it Wrong.pdf
Melissa Tondi - Automation We_re Doing it Wrong.pdfMelissa Tondi - Automation We_re Doing it Wrong.pdf
Melissa Tondi - Automation We_re Doing it Wrong.pdfQA or the Highway
 
Jeff Van Fleet and John Townsend - Transition from Testing to Leadership.pdf
Jeff Van Fleet and John Townsend - Transition from Testing to Leadership.pdfJeff Van Fleet and John Townsend - Transition from Testing to Leadership.pdf
Jeff Van Fleet and John Townsend - Transition from Testing to Leadership.pdfQA or the Highway
 
DesiradhaRam Gadde - Testers _ Testing in ChatGPT-AI world.pptx
DesiradhaRam Gadde - Testers _ Testing in ChatGPT-AI world.pptxDesiradhaRam Gadde - Testers _ Testing in ChatGPT-AI world.pptx
DesiradhaRam Gadde - Testers _ Testing in ChatGPT-AI world.pptxQA or the Highway
 
Damian Synadinos - Word Smatter.pdf
Damian Synadinos - Word Smatter.pdfDamian Synadinos - Word Smatter.pdf
Damian Synadinos - Word Smatter.pdfQA or the Highway
 
Lee Barnes - What Successful Test Automation is.pdf
Lee Barnes - What Successful Test Automation is.pdfLee Barnes - What Successful Test Automation is.pdf
Lee Barnes - What Successful Test Automation is.pdfQA or the Highway
 
Jordan Powell - API Testing with Cypress.pptx
Jordan Powell - API Testing with Cypress.pptxJordan Powell - API Testing with Cypress.pptx
Jordan Powell - API Testing with Cypress.pptxQA or the Highway
 
Carlos Kidman - Exploring AI Applications in Testing.pptx
Carlos Kidman - Exploring AI Applications in Testing.pptxCarlos Kidman - Exploring AI Applications in Testing.pptx
Carlos Kidman - Exploring AI Applications in Testing.pptxQA or the Highway
 

More from QA or the Highway (20)

KrishnaToolComparisionPPT.pdf
KrishnaToolComparisionPPT.pdfKrishnaToolComparisionPPT.pdf
KrishnaToolComparisionPPT.pdf
 
Ravi Lakkavalli - World Quality Report.pptx
Ravi Lakkavalli - World Quality Report.pptxRavi Lakkavalli - World Quality Report.pptx
Ravi Lakkavalli - World Quality Report.pptx
 
Caleb Crandall - Testing Between the Buckets.pptx
Caleb Crandall - Testing Between the Buckets.pptxCaleb Crandall - Testing Between the Buckets.pptx
Caleb Crandall - Testing Between the Buckets.pptx
 
Thomas Haver - Mobile Testing.pdf
Thomas Haver - Mobile Testing.pdfThomas Haver - Mobile Testing.pdf
Thomas Haver - Mobile Testing.pdf
 
Thomas Haver - Example Mapping.pdf
Thomas Haver - Example Mapping.pdfThomas Haver - Example Mapping.pdf
Thomas Haver - Example Mapping.pdf
 
Joe Colantonio - Actionable Automation Awesomeness in Testing Farm.pdf
Joe Colantonio - Actionable Automation Awesomeness in Testing Farm.pdfJoe Colantonio - Actionable Automation Awesomeness in Testing Farm.pdf
Joe Colantonio - Actionable Automation Awesomeness in Testing Farm.pdf
 
Sarah Geisinger - Continious Testing Metrics That Matter.pdf
Sarah Geisinger - Continious Testing Metrics That Matter.pdfSarah Geisinger - Continious Testing Metrics That Matter.pdf
Sarah Geisinger - Continious Testing Metrics That Matter.pdf
 
Jeff Sing - Quarterly Service Delivery Reviews.pdf
Jeff Sing - Quarterly Service Delivery Reviews.pdfJeff Sing - Quarterly Service Delivery Reviews.pdf
Jeff Sing - Quarterly Service Delivery Reviews.pdf
 
Leandro Melendez - Chihuahua Load Tests.pdf
Leandro Melendez - Chihuahua Load Tests.pdfLeandro Melendez - Chihuahua Load Tests.pdf
Leandro Melendez - Chihuahua Load Tests.pdf
 
Rick Clymer - Incident Management.pdf
Rick Clymer - Incident Management.pdfRick Clymer - Incident Management.pdf
Rick Clymer - Incident Management.pdf
 
Robert Fornal - ChatGPT as a Testing Tool.pptx
Robert Fornal - ChatGPT as a Testing Tool.pptxRobert Fornal - ChatGPT as a Testing Tool.pptx
Robert Fornal - ChatGPT as a Testing Tool.pptx
 
Federico Toledo - Extra-functional testing.pdf
Federico Toledo - Extra-functional testing.pdfFederico Toledo - Extra-functional testing.pdf
Federico Toledo - Extra-functional testing.pdf
 
Andrew Knight - Managing the Test Data Nightmare.pptx
Andrew Knight - Managing the Test Data Nightmare.pptxAndrew Knight - Managing the Test Data Nightmare.pptx
Andrew Knight - Managing the Test Data Nightmare.pptx
 
Melissa Tondi - Automation We_re Doing it Wrong.pdf
Melissa Tondi - Automation We_re Doing it Wrong.pdfMelissa Tondi - Automation We_re Doing it Wrong.pdf
Melissa Tondi - Automation We_re Doing it Wrong.pdf
 
Jeff Van Fleet and John Townsend - Transition from Testing to Leadership.pdf
Jeff Van Fleet and John Townsend - Transition from Testing to Leadership.pdfJeff Van Fleet and John Townsend - Transition from Testing to Leadership.pdf
Jeff Van Fleet and John Townsend - Transition from Testing to Leadership.pdf
 
DesiradhaRam Gadde - Testers _ Testing in ChatGPT-AI world.pptx
DesiradhaRam Gadde - Testers _ Testing in ChatGPT-AI world.pptxDesiradhaRam Gadde - Testers _ Testing in ChatGPT-AI world.pptx
DesiradhaRam Gadde - Testers _ Testing in ChatGPT-AI world.pptx
 
Damian Synadinos - Word Smatter.pdf
Damian Synadinos - Word Smatter.pdfDamian Synadinos - Word Smatter.pdf
Damian Synadinos - Word Smatter.pdf
 
Lee Barnes - What Successful Test Automation is.pdf
Lee Barnes - What Successful Test Automation is.pdfLee Barnes - What Successful Test Automation is.pdf
Lee Barnes - What Successful Test Automation is.pdf
 
Jordan Powell - API Testing with Cypress.pptx
Jordan Powell - API Testing with Cypress.pptxJordan Powell - API Testing with Cypress.pptx
Jordan Powell - API Testing with Cypress.pptx
 
Carlos Kidman - Exploring AI Applications in Testing.pptx
Carlos Kidman - Exploring AI Applications in Testing.pptxCarlos Kidman - Exploring AI Applications in Testing.pptx
Carlos Kidman - Exploring AI Applications in Testing.pptx
 

Recently uploaded

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 

Recently uploaded (20)

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 

ATDD Lunch & Learn - Order Testing Scenarios

  • 1. Jon Kruger Twitter // @JonKruger Email // jon@jonkruger.com Blog // http://jonkruger.com
  • 2. For anyone who cares about acceptance testing tools and practices  1st Thursday of every month during lunch   Google “columbus atdd”
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12. How is QA going to test the feature? How do developers know when they’re done? How can developers help QA?
  • 13.
  • 14.
  • 15. Given I am a logged in user When I go to the final checkout page Then I should see the total cost of the order broken down by product cost, tax, and shipping charges And I should see the total cost of the order The “Gherkin” syntax
  • 16. Given I am a logged in user When I go to the final checkout page Then I should see the total cost of the order broken down by product cost, tax, and shipping charges And I should see the total cost of the order Order total = total cost of products on the order + tax + shipping charges  Tax:   Ohio = 7%  Michigan = 6.5%  Other states = 0%  Shipping:  If total cost of products (before tax >= $25), shipping is free, otherwise $5
  • 17. Given I am a logged in user When I go to the final checkout page Then I should see the total cost of the order broken down by product cost, tax, and shipping charges And I should see the total cost of the order Order total = total cost of products on the order + tax + shipping charges  Tax:         Based on the shipping address, not the billing address Tax charged on the sum of the cost of the products Ohio = 7% Michigan = 6.5% Other states (including DC) = 0% No shipping internationally Shipping:  If total cost of products (before tax) >= $25, shipping is free, otherwise $5
  • 18. We’ll test the following scenarios: Order with multiple products  Ship to OH, MI, DC  Unit tests to verify tax calculation for all 51 states  Shipping < $25, = $25, > $25  Verify order totals 
  • 19. Products Tax Shipping Order with one product Ship to Ohio (7% tax) Cost of product = $24.99 (shipping is $5) Order with one product Ship to Michigan (6.5% tax) Cost of product = $25 (shipping is free) Order with multiple products Ship to DC, billing address is Ohio (0% tax) Cost of products = $25.01 (shipping is free) Verifications Total cost = sum of cost of products + tax + shipping
  • 20. Scenario: Order with one product, ship to OH, total product cost < $25 Given I am a logged in user And the shopping cart is empty And I add a product costing $24.99 to the cart And my shipping state is OH And my billing state is OH When I go to the final checkout page Then the tax amount should be $1.75 And the shipping amount should be $5.00 And the order total should be $31.74
  • 21. Break things into small chunks  Insist on acceptance criteria being complete before development begins  “3 Amigos” is not just a meeting  Remember the end goal – defined acceptance criteria and shared knowledge 
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29. = Working Tested Features = In Production (or ready to go to production)
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36. We go faster  QA people moving into analyst roles  QA people asking devs to automate testing for them  Automated tests driving quality  Rolling out ATDD to other teams 
  • 37. Address shared pain (QA and devs dealing with incomplete requirements)  Developers tell QA how they tested their code  Show that there is a problem (e.g. lots of time spent fixing bugs)  Have developers help test when QA is behind  Insist on acceptance criteria (regardless of who writes it)  Change your metrics  Make incremental progress 
  • 38.
  • 39. Slides: http://jonkruger.com/, click on Presentations Email: jon@jonkruger.com Twitter: @JonKruger Blog: http://jonkruger.com