SlideShare a Scribd company logo
ATDD/BDD/TDD
created by: Anuar Nurmakanov
Test Driven Development
Behavior Driven Development
Acceptance Test Driven
Development
Testing Pyramid
TDD and BDD and ATDD
TDD
TDD Steps
TEST FIRST, NOT
AFTER
SPOCK Tests Sample
def "should add through AWS S3 wrapper when file is valid"() {
given: "a file that must be saved in S3 bucket"
def fileName = "File, file, file!"
def contentType = "type"
def file = fakeInputStream()
and: "it must be saved in the template"
def templateId = "SLOT-ss4488S"
and: "file type is valid"
validator.validate(contentType) >> new ValidationNotification()
when: "we call a service to save the file"
service.uploadForTemplate(templateId, fileName, contentType, file)
then:
1 * fileServiceWrapper.upload(templateId + "/", fileName, contentType, fil
}
TDD is underhood practice
about good design and internal
quality
TDD=Internal Quality
Clean Code Learning curve
Better Design Documentation
TDD does not require scenarios
from business
Scenario
Next step
Different names
Agile acceptance testing
Behavior-Driven Development
Acceptance Test-Driven
Development
Example-Driven Development
Story testing
Specification by Example
But all have the same idea
EXAMPLES FROM
BUSINESS BECOME
AUTOMATED TESTS
BDD & ATDD
TESTS ACCEPTS USER
STORIES
BDD & ATDD
AUTOMATED TESTS
ACCEPTS USER STORIES
ATDD
BDD ATDD
Product Owner The team
Use case 1
What if?
Use case 1 details
...
Real examples Test Data Scenario
Option 1
Product Owner The team
Story Workshop
Prepares specification
Review specifications
QA
Product Owner
Phase 1
Phase 2
Automates specs
Implements
Product
Owner
The team
accept by
using
automated
tests
Option 2
Product Owner The team
Story Workshop
Prepares specification
Phase 1
Product Owner
Phase 2
Automates specs
Implements
Product
Owner
The team
accept by
using
automated
tests
Option 3
Product Owner The team
Story Workshop
Prepares specification
QA
Phase 1
Phase 2
Automates specs
Implements
Product
Owner
The team
accept by
using
automated
tests
Options ranking
Option 1
Option 2
Option 3
How to start if we do not
have UI yet?
will provide insights
about the necessary
First example
User interface for
end user
First example?
you can extend the examples in multiple
directions
Example 2
Example N
explains a case for ...
users ... when ...
explains a case for ...
admin ... if...
Instead of programming against
a real user interface, abstract
from the GUI to the business
cases behind your examples
It is recommended writing your
tests as if you already have the
interface you wish you had
(+ BDD)
http://concordion.org
http://fitnesse.org
https://code.google.com/archive/p/spect
acular
ATDD Tools
https://cucumber.io/
http://jbehave.org/
http://concordion.org/
BDD Tools
BDD/ATDD tools can
be also used for
ATDD/BDD approach
References

More Related Content

PPTX
TDD - Agile
PDF
Test Driven Development (TDD)
PPTX
Tdd and bdd
PDF
Bdd Introduction
PPTX
Agile Testing and Test Automation
PPT
Agile QA presentation
PPTX
Agile Testing: The Role Of The Agile Tester
PPTX
Test Driven Development (TDD) Preso 360|Flex 2010
TDD - Agile
Test Driven Development (TDD)
Tdd and bdd
Bdd Introduction
Agile Testing and Test Automation
Agile QA presentation
Agile Testing: The Role Of The Agile Tester
Test Driven Development (TDD) Preso 360|Flex 2010

What's hot (20)

KEY
ATDD in Practice
PDF
An Introduction to Test Driven Development
PPTX
QA Best Practices in Agile World_new
PPT
Agile testing
PPT
Agile Metrics
PPTX
Cucumber BDD
ODP
BDD with Cucumber
PPT
Testing in Agile Projects
PPTX
Agile 101
PPTX
BDD WITH CUCUMBER AND JAVA
PPTX
Test Automation Framework with BDD and Cucumber
PPTX
Unit testing & TDD concepts with best practice guidelines.
PDF
An introduction to Behavior-Driven Development (BDD)
PPTX
Automated Test Framework with Cucumber
PPT
Test automation process
PPTX
SRE 101 (Site Reliability Engineering)
PPTX
ODP
Test Automation Framework using Cucumber BDD overview (part 1)
PPTX
Introduction to Bdd and cucumber
PDF
Software Testing Life Cycle (STLC) | Software Testing Tutorial | Edureka
ATDD in Practice
An Introduction to Test Driven Development
QA Best Practices in Agile World_new
Agile testing
Agile Metrics
Cucumber BDD
BDD with Cucumber
Testing in Agile Projects
Agile 101
BDD WITH CUCUMBER AND JAVA
Test Automation Framework with BDD and Cucumber
Unit testing & TDD concepts with best practice guidelines.
An introduction to Behavior-Driven Development (BDD)
Automated Test Framework with Cucumber
Test automation process
SRE 101 (Site Reliability Engineering)
Test Automation Framework using Cucumber BDD overview (part 1)
Introduction to Bdd and cucumber
Software Testing Life Cycle (STLC) | Software Testing Tutorial | Edureka
Ad

Similar to TDD and BDD and ATDD (20)

DOC
Some useful tips with qtp
PPTX
BDD using Cucumber JVM
PDF
Test & behavior driven development
PPTX
Sexy Using Cucumber - BDD in your project
PPT
Behavior Driven Development by Example
PPTX
Test Driven Development (TDD) with FlexUnit 4 - 360|Flex San Jose preso
PPTX
Automate test, tools, advantages, and disadvantages
PDF
03 test specification and execution
PPT
Acceptance Testing With Selenium
PDF
Strategy-driven Test Generation with Open Source Frameworks
PPTX
Behavior Driven Development
PDF
Mastering BDD with Cucumber & Java for Test Automation
ODP
Grails unit testing
PDF
Testing in Craft CMS
PDF
Software Quality and Test Strategies for Ruby and Rails Applications
PPTX
Introduction to testing with MSTest, Visual Studio, and Team Foundation Serve...
PDF
Modern Python Testing
PDF
3 WAYS TO TEST YOUR COLDFUSION API -
PDF
3 WAYS TO TEST YOUR COLDFUSION API
Some useful tips with qtp
BDD using Cucumber JVM
Test & behavior driven development
Sexy Using Cucumber - BDD in your project
Behavior Driven Development by Example
Test Driven Development (TDD) with FlexUnit 4 - 360|Flex San Jose preso
Automate test, tools, advantages, and disadvantages
03 test specification and execution
Acceptance Testing With Selenium
Strategy-driven Test Generation with Open Source Frameworks
Behavior Driven Development
Mastering BDD with Cucumber & Java for Test Automation
Grails unit testing
Testing in Craft CMS
Software Quality and Test Strategies for Ruby and Rails Applications
Introduction to testing with MSTest, Visual Studio, and Team Foundation Serve...
Modern Python Testing
3 WAYS TO TEST YOUR COLDFUSION API -
3 WAYS TO TEST YOUR COLDFUSION API
Ad

Recently uploaded (20)

PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PPTX
Essential Infomation Tech presentation.pptx
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PPTX
Operating system designcfffgfgggggggvggggggggg
PPTX
Introduction to Artificial Intelligence
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PPTX
Materi-Enum-and-Record-Data-Type (1).pptx
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
Online Work Permit System for Fast Permit Processing
PDF
Softaken Excel to vCard Converter Software.pdf
PPTX
ai tools demonstartion for schools and inter college
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPT
JAVA ppt tutorial basics to learn java programming
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Essential Infomation Tech presentation.pptx
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Design an Analysis of Algorithms I-SECS-1021-03
Operating system designcfffgfgggggggvggggggggg
Introduction to Artificial Intelligence
VVF-Customer-Presentation2025-Ver1.9.pptx
Materi-Enum-and-Record-Data-Type (1).pptx
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PTS Company Brochure 2025 (1).pdf.......
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Online Work Permit System for Fast Permit Processing
Softaken Excel to vCard Converter Software.pdf
ai tools demonstartion for schools and inter college
Design an Analysis of Algorithms II-SECS-1021-03
JAVA ppt tutorial basics to learn java programming
How Creative Agencies Leverage Project Management Software.pdf
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
2025 Textile ERP Trends: SAP, Odoo & Oracle

TDD and BDD and ATDD