SlideShare a Scribd company logo
BDD IN AUTOMATION TESTING
www.axon.vnfb.com/AxonActiveVietNam
Who Am I?
My name Nguyen Thi Hong Thuy
Studied at Danang University of Technology
Master of Computer Science
IT developing experience started at University in 2004
Java Developer at MagRabbit VN
Java Developer, Tester at Axon Active VN
Email thuy.nguyen@axonactive.vn
www.axon.vnfb.com/AxonActiveVietNam
 The Importance of Requirements
 Behavior Driven Developments (BDD)
• Why born BDD?
• What is BDD?
• Why use BDD?
• BDD Style & Tools
 How we have applied BDD in our projects
 Workshop
 Conclusion of BDD
 Q&A
Agenda
www.axon.vnfb.com/AxonActiveVietNam
The importance of requirements
www.axon.vnfb.com/AxonActiveVietNam
The importance of requirements
www.axon.vnfb.com/AxonActiveVietNam
The importance of requirements
www.axon.vnfb.com/AxonActiveVietNam
Behavior Driven Developments
www.axon.vnfb.com/AxonActiveVietNam
Test-driven development is a method of software development
in which unit testing is repeatedly done on source code
TDD
Workflow of TDD
REFACTOR
GREEN
(Pass)
RED
(Fail)
REPEAT PROCESS
1. Write a test
that fails
2. Make only
enough code
for it to pass
3. Improve
code quality
www.axon.vnfb.com/AxonActiveVietNam
Why born BDD?
www.axon.vnfb.com/AxonActiveVietNam
What is BDD?
Behavior-Driven Development (BDD) is a set of
software engineering practices designed to help
teams build and deliver more valuable, higher quality
software faster.
www.axon.vnfb.com/AxonActiveVietNam
BDD
Building the right software
Automated Acceptance Criteria
API and code design
Building the software right
Feature injection
Collaboration
Living Documentation
What is BDD?
www.axon.vnfb.com/AxonActiveVietNam
Workflow of TDD/BDD
BDD was originally designed as an improved version of TDD
TDD
BDD
Refactor
n cycles
Make the
test pass
Write a
failing test
Write a failing
feature test
www.axon.vnfb.com/AxonActiveVietNam
Customer tells the
business analyst
what he wants
Why use BDD?
The business analyst
writes a requirements
document
The developer translates the
requirements into software
The tester translates the
requirements into test cases
Customer
The traditional development process
www.axon.vnfb.com/AxonActiveVietNam
 There are many opportunities for information to get lost in
translation, be misunderstood, or just be ignored
 Chances are that the new module itself may not do exactly what
was required and that the documentation won’t reflect the initial
requirements
Problems
www.axon.vnfb.com/AxonActiveVietNam
Why use BDD?
The development process is applying BDD
Customer and BA have a
conversation about what
he needs.
BA, the developer and
the tester elaborate the
requirements together
The automated tester
The manual tester
The developer
Customer
www.axon.vnfb.com/AxonActiveVietNam
BDD Style – Feature file example
Meta:
Narrative:
In order to login ZingPoll successfully
As a user
I want to have single choice poll
So that I can create polls, share it to my friends & collect the option about it
Scenario: Create a single choice poll successful
Given I am on ZingPoll website
When I click the Sign In button on the menu bar to register an new account
Then The Sign In form should be shown
When I enter email <email> and password <password>
And I click the Sign In button on the form
Then I log in into website successful
When I enter <question> into the question field
And I enter the <first_anwser> and <second_answer> into the answer fields
And I click the Create Poll button
Then The poll is created successfully
Examples:
|email |password |question |first_anwser|second_answer
|bddteam1@gmail.com | zingpoll | Have you ever applied BDD in your project? |Yes |No|
Feature
Scenario
What business outcomes are you trying to achieve?
Who needs it ?
What must you do to help achieve this outcome?
Each row represents separate set of
test data
www.axon.vnfb.com/AxonActiveVietNam
Feature: Login ZingPoll system
As a user
I want to login to Zingpoll website
So that I can use all features
Who’s using the system? What are they doing?
Why do they care?
BDD Style – Feature file example
www.axon.vnfb.com/AxonActiveVietNam
Scenario: Login ZingPoll system successful
Given I am on ZingPoll website
When I click the Sign In button on the menu bar to register an new
account
Then The Sign In form should be shown
When I enter email <email> and password <password>
And I click the Sign In button on the form
Then I log in into website successful
• Given - Sets up preconditions, or context, for the scenario
• When - The action, or behavior, that we’re focused on
• Then - Checks post-conditions and verifies that the right thing happened
in the When stage
BDD Style – Feature file example
www.axon.vnfb.com/AxonActiveVietNam
The principal activities and outcomes of BDD
Business goal Features Examples Executable
specifications
Low-level
specifications
Application code
Living
documentation
Real-time
progress reports
Technical
documentation
Automatic
validation
www.axon.vnfb.com/AxonActiveVietNam
The principal activities and outcomes of BDD
Examples Executable
specifications
Low-level
specifications
Application code
www.axon.vnfb.com/AxonActiveVietNam
How we have applied BDD in our current projects
www.axon.vnfb.com/AxonActiveVietNam
Repositories
www.axon.vnfb.com/AxonActiveVietNam
Build Jenkins
www.axon.vnfb.com/AxonActiveVietNam
Pipeline
www.axon.vnfb.com/AxonActiveVietNam
Workshop
www.axon.vnfb.com/AxonActiveVietNam
Introduce ZingPoll Website
www.axon.vnfb.com/AxonActiveVietNam
The Business Rules layer
The Business Flow layer
The Technical layer
Well-written automated acceptance criteria
www.axon.vnfb.com/AxonActiveVietNam
Workshop
Story 1:
As a ZingPoll user
I want to login to ZingPoll
website
So that I can use all features
www.axon.vnfb.com/AxonActiveVietNam
Workshop
Story 2:
As a ZingPoll user
I want to have single choice poll
So that I can create polls, share
it to my friends & collect the
option about it
www.axon.vnfb.com/AxonActiveVietNam
Conclusion of BDD
 Focus effort
 Reduce waste and misaligned requirement
 Deliver more valuable software
 Make changes safety
 Faster and more reliable releases
 Reduced maintenance costs
www.axon.vnfb.com/AxonActiveVietNam
Potential challenges of BDD
 BDD requires high business engagement and collaboration
 BDD works best in an Agile or iterative context
 Poorly written tests can lead to higher test-maintenance costs
www.axon.vnfb.com/AxonActiveVietNam
Q&A
www.axon.vnfb.com/AxonActiveVietNam
Thanks for your attention

More Related Content

What's hot (20)

PDF
Build the "right" regression suite using Behavior Driven Testing (BDT)
Anand Bagmar
 
PDF
Build the "right" regression suite using Behavior Driven Testing (BDT)
Anand Bagmar
 
PDF
Anand Bagmar - Behavior Driven Testing (BDT) in Agile
Anand Bagmar
 
PDF
Build the Right Regression Suite with Behavior-Driven Testing
TechWell
 
PPTX
Testable requirements
Wyn B. Van Devanter
 
PDF
[DevDay 2016] Secret tools for a Scrum Team - Speaker: Sebastian Sussman – CI...
DevDay Da Nang
 
PPT
VodQA3_ATDD_KetanSoni
vodQA
 
PDF
Visual Validation - The missing tip of the automation pyramid @AgileIndia2020
Anand Bagmar
 
PDF
Building the "right" regression suite using Behavior Driven Testing (BDT)
Anand Bagmar
 
PDF
Behavior Driven Testing - A paradigm shift
Aspire Systems
 
PPT
Challenges faced in UI automation
Srinivas Kantipudi
 
PPTX
Conference talk trials and triumphs of visual testing
Kunwardeep Bedi
 
PDF
Measuring Consumer Quality - The Missing Feedback Loop
Anand Bagmar
 
PDF
Visual AI Testing Using Applitools
Mikhail Laptev
 
PPTX
Best Practices for a Repeatable Shift-Left Commitment
Applause
 
PDF
Baking In Quality: The Evolving Role of the Agile Tester
TechWell
 
PDF
A/B Testing Framework Design
Patrick McKenzie
 
PDF
Visual Validation - The Missing Tip of the Automation Pyramid
Anand Bagmar
 
PDF
What is Agile Testing? How does Automation help?
Anand Bagmar
 
PPTX
UI Test Automation - Maximizing ROI by Minimizing Maintenance Costs
🐾 Jim Sibley 🐾
 
Build the "right" regression suite using Behavior Driven Testing (BDT)
Anand Bagmar
 
Build the "right" regression suite using Behavior Driven Testing (BDT)
Anand Bagmar
 
Anand Bagmar - Behavior Driven Testing (BDT) in Agile
Anand Bagmar
 
Build the Right Regression Suite with Behavior-Driven Testing
TechWell
 
Testable requirements
Wyn B. Van Devanter
 
[DevDay 2016] Secret tools for a Scrum Team - Speaker: Sebastian Sussman – CI...
DevDay Da Nang
 
VodQA3_ATDD_KetanSoni
vodQA
 
Visual Validation - The missing tip of the automation pyramid @AgileIndia2020
Anand Bagmar
 
Building the "right" regression suite using Behavior Driven Testing (BDT)
Anand Bagmar
 
Behavior Driven Testing - A paradigm shift
Aspire Systems
 
Challenges faced in UI automation
Srinivas Kantipudi
 
Conference talk trials and triumphs of visual testing
Kunwardeep Bedi
 
Measuring Consumer Quality - The Missing Feedback Loop
Anand Bagmar
 
Visual AI Testing Using Applitools
Mikhail Laptev
 
Best Practices for a Repeatable Shift-Left Commitment
Applause
 
Baking In Quality: The Evolving Role of the Agile Tester
TechWell
 
A/B Testing Framework Design
Patrick McKenzie
 
Visual Validation - The Missing Tip of the Automation Pyramid
Anand Bagmar
 
What is Agile Testing? How does Automation help?
Anand Bagmar
 
UI Test Automation - Maximizing ROI by Minimizing Maintenance Costs
🐾 Jim Sibley 🐾
 

Similar to BDD in Automation Testing (20)

PPTX
Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
John Patterson
 
PPTX
Agile software requirements management with Impact Mapping and BDD
Fred Heath
 
PDF
Webinar-From user stories to automated acceptance tests with BDD-Eduardo Riol
atSistemas
 
PDF
Expo qa from user stories to automated acceptance tests with bdd
Eduardo Riol
 
PPTX
Automation testing
Romexsoft
 
PPT
IEA Presentation
Mariyah Hoosenally
 
DOC
Online shopping ecommerce java project
Tutorial Learners
 
PDF
Wizard - Credential 2013
Vũ Thịnh
 
PPTX
Design your tests to behave - An introduction To BDD!
Aparna A Gopalakrishnan
 
PDF
Testable Requirements
Bharti Rupani
 
PPTX
Introduction to Google Analytics
AVIK BAL
 
PPTX
Brisbane Shopify Meetup - 1st December 2016
Reload Media
 
PDF
Best Practices: What to Track with Your Analytics
Kissmetrics on SlideShare
 
PDF
[DevDay 2017] Lean Startup - Design Thinking - Speaker: Sebastian Sussmann - ...
DevDay Da Nang
 
PDF
Best Practices in List Segmentation
Act-On Software
 
PPTX
Advanced Techniques for Increasing Conversion Rates on Shopify.pptx
SeedCart
 
PPTX
Portfolio MMeyer 2014
Michelle Meyer
 
PPTX
Myths and Challenges of Behaviour Driven Development
Pankaj Nakhat
 
DOC
Dinesh_Resume
dineshrajkumar
 
Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
John Patterson
 
Agile software requirements management with Impact Mapping and BDD
Fred Heath
 
Webinar-From user stories to automated acceptance tests with BDD-Eduardo Riol
atSistemas
 
Expo qa from user stories to automated acceptance tests with bdd
Eduardo Riol
 
Automation testing
Romexsoft
 
IEA Presentation
Mariyah Hoosenally
 
Online shopping ecommerce java project
Tutorial Learners
 
Wizard - Credential 2013
Vũ Thịnh
 
Design your tests to behave - An introduction To BDD!
Aparna A Gopalakrishnan
 
Testable Requirements
Bharti Rupani
 
Introduction to Google Analytics
AVIK BAL
 
Brisbane Shopify Meetup - 1st December 2016
Reload Media
 
Best Practices: What to Track with Your Analytics
Kissmetrics on SlideShare
 
[DevDay 2017] Lean Startup - Design Thinking - Speaker: Sebastian Sussmann - ...
DevDay Da Nang
 
Best Practices in List Segmentation
Act-On Software
 
Advanced Techniques for Increasing Conversion Rates on Shopify.pptx
SeedCart
 
Portfolio MMeyer 2014
Michelle Meyer
 
Myths and Challenges of Behaviour Driven Development
Pankaj Nakhat
 
Dinesh_Resume
dineshrajkumar
 
Ad

More from Scrum Breakfast Vietnam (20)

PPTX
[Scrum Breakfast DN] Is it possible to make 100% Unit Test coverage for your ...
Scrum Breakfast Vietnam
 
PDF
Zero to hero in agile automation testing
Scrum Breakfast Vietnam
 
PDF
Retrospective Toolbox - HCMC Scrum Breakfast - 30/11/2019
Scrum Breakfast Vietnam
 
PDF
UI/UX Design in Agile process
Scrum Breakfast Vietnam
 
PPTX
Team building in the Infinite game - HCMC Scrum Breakfast - 28/09/2019
Scrum Breakfast Vietnam
 
PPTX
Design Thinking in Solving Problem - HCMC Scrum Breakfast - July 27, 2019
Scrum Breakfast Vietnam
 
PPTX
Make your Scrum team great again - DN Scrum Breakfast - June 21, 2019
Scrum Breakfast Vietnam
 
PPTX
Working as a remote team - HCM Scrum Breakfast - May 25, 2019
Scrum Breakfast Vietnam
 
PPTX
Reactive programming by spring webflux - DN Scrum Breakfast - Nov 2018
Scrum Breakfast Vietnam
 
PPTX
Benefits of BPMN in Software Development - DN Scrum Breakfast - September 29,...
Scrum Breakfast Vietnam
 
PPTX
CSS Flexbox and Grid: The future of website layouts - DN Scrum Breakfast - Au...
Scrum Breakfast Vietnam
 
PPTX
Automation Testing in Agile - HCM Scrum Breakfast - July 2018
Scrum Breakfast Vietnam
 
PPTX
[DN Scrum Breakfast] API Automation Testing Using Retrofit & Cucumber
Scrum Breakfast Vietnam
 
PPTX
[HCM Scrum Breakfast - April 2018] Teamwork: The Leader Job (Pt.1)
Scrum Breakfast Vietnam
 
PDF
[DN Scrum Breakfast] Effective Cloud Computing
Scrum Breakfast Vietnam
 
PPTX
[HCM Scrum Breakfast - January 2018] ElasticSearch In Action
Scrum Breakfast Vietnam
 
PPTX
[DN Scrum Breakfast] Automation E2E Testing with Chimp Framework and WebdriverIO
Scrum Breakfast Vietnam
 
PPTX
[DN Scrum Breakfast] Scrum Master, do we really need one_by Nam Dang_Mar2016
Scrum Breakfast Vietnam
 
PPTX
[DN Scrum Breakfast] Protractor: E2E Testing for AngularJS (by Thuy Nguyen)
Scrum Breakfast Vietnam
 
PPTX
[Da Nang Scrum Breakfast] Angular Tour
Scrum Breakfast Vietnam
 
[Scrum Breakfast DN] Is it possible to make 100% Unit Test coverage for your ...
Scrum Breakfast Vietnam
 
Zero to hero in agile automation testing
Scrum Breakfast Vietnam
 
Retrospective Toolbox - HCMC Scrum Breakfast - 30/11/2019
Scrum Breakfast Vietnam
 
UI/UX Design in Agile process
Scrum Breakfast Vietnam
 
Team building in the Infinite game - HCMC Scrum Breakfast - 28/09/2019
Scrum Breakfast Vietnam
 
Design Thinking in Solving Problem - HCMC Scrum Breakfast - July 27, 2019
Scrum Breakfast Vietnam
 
Make your Scrum team great again - DN Scrum Breakfast - June 21, 2019
Scrum Breakfast Vietnam
 
Working as a remote team - HCM Scrum Breakfast - May 25, 2019
Scrum Breakfast Vietnam
 
Reactive programming by spring webflux - DN Scrum Breakfast - Nov 2018
Scrum Breakfast Vietnam
 
Benefits of BPMN in Software Development - DN Scrum Breakfast - September 29,...
Scrum Breakfast Vietnam
 
CSS Flexbox and Grid: The future of website layouts - DN Scrum Breakfast - Au...
Scrum Breakfast Vietnam
 
Automation Testing in Agile - HCM Scrum Breakfast - July 2018
Scrum Breakfast Vietnam
 
[DN Scrum Breakfast] API Automation Testing Using Retrofit & Cucumber
Scrum Breakfast Vietnam
 
[HCM Scrum Breakfast - April 2018] Teamwork: The Leader Job (Pt.1)
Scrum Breakfast Vietnam
 
[DN Scrum Breakfast] Effective Cloud Computing
Scrum Breakfast Vietnam
 
[HCM Scrum Breakfast - January 2018] ElasticSearch In Action
Scrum Breakfast Vietnam
 
[DN Scrum Breakfast] Automation E2E Testing with Chimp Framework and WebdriverIO
Scrum Breakfast Vietnam
 
[DN Scrum Breakfast] Scrum Master, do we really need one_by Nam Dang_Mar2016
Scrum Breakfast Vietnam
 
[DN Scrum Breakfast] Protractor: E2E Testing for AngularJS (by Thuy Nguyen)
Scrum Breakfast Vietnam
 
[Da Nang Scrum Breakfast] Angular Tour
Scrum Breakfast Vietnam
 
Ad

Recently uploaded (20)

PPTX
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
Unlock Efficiency with Insurance Policy Administration Systems
Insurance Tech Services
 
PDF
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
PPTX
Transforming Mining & Engineering Operations with Odoo ERP | Streamline Proje...
SatishKumar2651
 
PPTX
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
PDF
MiniTool Partition Wizard 12.8 Crack License Key LATEST
hashhshs786
 
PDF
Alarm in Android-Scheduling Timed Tasks Using AlarmManager in Android.pdf
Nabin Dhakal
 
PDF
vMix Pro 28.0.0.42 Download vMix Registration key Bundle
kulindacore
 
PDF
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
PPTX
Hardware(Central Processing Unit ) CU and ALU
RizwanaKalsoom2
 
PPTX
Human Resources Information System (HRIS)
Amity University, Patna
 
PDF
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pdf
Varsha Nayak
 
PPTX
Tally software_Introduction_Presentation
AditiBansal54083
 
PDF
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
PDF
iTop VPN With Crack Lifetime Activation Key-CODE
utfefguu
 
PPTX
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
PPTX
Tally_Basic_Operations_Presentation.pptx
AditiBansal54083
 
PDF
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
PDF
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Unlock Efficiency with Insurance Policy Administration Systems
Insurance Tech Services
 
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
Transforming Mining & Engineering Operations with Odoo ERP | Streamline Proje...
SatishKumar2651
 
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
MiniTool Partition Wizard 12.8 Crack License Key LATEST
hashhshs786
 
Alarm in Android-Scheduling Timed Tasks Using AlarmManager in Android.pdf
Nabin Dhakal
 
vMix Pro 28.0.0.42 Download vMix Registration key Bundle
kulindacore
 
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
Hardware(Central Processing Unit ) CU and ALU
RizwanaKalsoom2
 
Human Resources Information System (HRIS)
Amity University, Patna
 
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pdf
Varsha Nayak
 
Tally software_Introduction_Presentation
AditiBansal54083
 
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
iTop VPN With Crack Lifetime Activation Key-CODE
utfefguu
 
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
Tally_Basic_Operations_Presentation.pptx
AditiBansal54083
 
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 

BDD in Automation Testing

Editor's Notes