Behavior-Driven Development (BDD) in Agile Software Development

 
Introduction to BDD
 
 
 
“BDD is a second-generation, outside-
in, pull-based, multiple-stakeholder,
multiple-scale, high-automation, agile
methodology. It describes a cycle of
interactions with well-defined outputs,
resulting in the delivery of working,
tested software that matters.”
-Dan North 2009
 
Where did BDD come from?
 
TDD was first
 
BDD better defined “what” to test
 
Core 
C
oncepts
 
uses dsl (domain specific languge)
leverage red/green/clean from TDD
usually integrated with a tool
 
T
ypical 
S
pecification has two parts
 
Story/Narrative
Who
What
Why
 
Acceptance Criteria
Initial condition
Trigger event
Expected Outcome
Often Gherkin
(given/when/then)
 
E
xamples
 
Specialized Tooling
 
 
 
What do the tools do?
 
R
eads the document
Understands key words ex:“then”
Cl
auses transformed to test parameters with help
from 
developers
E
xecutes the test scenarios
 
E
xamples
 
Jbehave
Rbehave
Cucumber
Rspec
JDave
 
What are the benefits?
 
Better collaboration
H
igh visibility – common language
Software design follows biz value
u
sers more satisfied
More confident devs
Hi
gher quality and lower cost
Slide Note
Embed
Share

Behavior-Driven Development (BDD) is a powerful methodology that emphasizes collaboration, automation, and delivering software that matters. It builds on Test-Driven Development (TDD) by focusing on defining behaviors and outcomes first. Core concepts include using domain-specific languages, integrating with tools, and following structured specifications like Gherkin syntax. BDD tools like Jbehave, Cucumber, and Rspec help translate requirements into executable tests, promoting better collaboration, visibility, and software quality while reducing costs.

  • BDD
  • Agile methodology
  • TDD
  • Collaboration
  • Automation

Uploaded on Sep 13, 2024 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Introduction to BDD

  2. BDD is a second-generation, outside- in, pull-based, multiple-stakeholder, multiple-scale, high-automation, agile methodology. It describes a cycle of interactions with well-defined outputs, resulting in the delivery of working, tested software that matters. -Dan North 2009

  3. Where did BDD come from? TDD was first BDD better defined what to test

  4. Core Concepts uses dsl (domain specific languge) leverage red/green/clean from TDD usually integrated with a tool

  5. Typical Specification has two parts Acceptance Criteria Initial condition Trigger event Expected Outcome Often Gherkin (given/when/then) Story/Narrative Who What Why

  6. Examples

  7. Specialized Tooling 8

  8. What do the tools do? Reads the document Understands key words ex: then Clauses transformed to test parameters with help from developers Executes the test scenarios

  9. Examples Jbehave Rbehave Cucumber Rspec JDave

  10. What are the benefits? Better collaboration High visibility common language Software design follows biz value users more satisfied More confident devs Higher quality and lower cost

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#