SlideShare a Scribd company logo
@gil_zilberfeld@gil_zilberfeld
BDD Crash Course
@gil_zilberfeld
Hello!
I AM GIL ZILBERFELD
www.gilzilberfeld.com
www.everydayunittesting.com
@gil_zilberfeld
@gil_zilberfeld@gil_zilberfeld
Behavior Driven Development
@gil_zilberfeld
BDD
“Combines the general techniques and
principles of TDD with ideas from
DDD and OOAD to provide software
development and management teams with
shared tools and a shared process to
collaborate on software development..”
@gil_zilberfeld@gil_zilberfeld
It’s all about conversations!
Automation comes later
@gil_zilberfeld
Not the testing pyramid
@gil_zilberfeld
A story
◉ Who – Stakeholder
◉ Why – Goals
◉ What - Capabilities
◉ How - Implementation
@gil_zilberfeld
@gil_zilberfeld
Stakeholder
“An individual, group, or
organization, who may affect, be
affected by, or perceive itself to be
affected by a decision, activity, or
outcome of a project.”
@gil_zilberfeld
Stakeholders
◉ Users
◉ Customers
◉ Builders
◉ Regulators
◉ Bystanders
@gil_zilberfeld
Categorizing stakeholders
◉ Roles
◉ Jobs to be done (JTBD)
◉ What’s important for them?
◉ How does the product impact their lives?
@gil_zilberfeld@gil_zilberfeld
Who are the stakeholders of Airbnb?
@gil_zilberfeld
Testicorn – A killer app
The ghost of the
testing unicorn
that terrorizes the
city of Stockholm
@gil_zilberfeld
Exercise: Testicorn stakeholders
◉ List them
◉ Categorize them
◉ Rate them
@gil_zilberfeld
@gil_zilberfeld
@gil_zilberfeld
Goal
“A goal is a desired
result that a person or a
system envisions, plans
and commits to
achieve.”
@gil_zilberfeld@gil_zilberfeld
What are the goals of the stakeholders of Airbnb?
@gil_zilberfeld
@gil_zilberfeld
Capability
“An ability to perform or
achieve certain actions or
outcomes through a set of
controllable and measurable
faculties, features, functions,
processes, or services.”
@gil_zilberfeld
Exercise: Stakeholders goals and capabilities
◉ What is important to our stakeholders?
◉ What do they want to achieve?
◉ What options do we have to meet the goals?
◉ Prioritize them
@gil_zilberfeld
@gil_zilberfeld
Risk
“The potential of gaining or
losing something of value.”
@gil_zilberfeld@gil_zilberfeld
What are the risks of the stakeholders of Airbnb?
@gil_zilberfeld
Exercise: Stakeholder’s risks
◉ What can go wrong?
◉ What happens when things go wrong?
◉ Think about how risks relate to capabilities
◉ Prioritize them
@gil_zilberfeld@gil_zilberfeld
Why do we need to slice stories?
@gil_zilberfeld
Questions about stories
◉ Are the stories ready for work?
◉ Do they fit in a sprint?
◉ How complex are they?
◉ What will we learn?
◉ What options do we have for implementation?
◉ Do we need to do a POC?
@gil_zilberfeld
The template
As a …
I want a …
In order to …
@gil_zilberfeld
The template
As a killer unicorn
I want to get near a victim
In order to kill it
@gil_zilberfeld@gil_zilberfeld
What is the acceptance criteria?
@gil_zilberfeld@gil_zilberfeld
Give me an example!
@gil_zilberfeld
The template
As a killer unicorn
I need to be at least 12 steps
from a victim
In order to kill it
@gil_zilberfeld
Good user stories
Independent
Negotiable
Valuable
Estimable
Small
Testable
Bill Wake, 2003
@gil_zilberfeld
Good user stories
Independent
Negotiable
Valuable
Estimable
Small
Testable
Bill Wake, 2003
@gil_zilberfeld
Exercise
◉ Write stories for the capabilities and risks
◉ Remember who the stake holder is
@gil_zilberfeld@gil_zilberfeld
Gherkin
Finally some automation
@gil_zilberfeld
The keywords
Given
When
Then
And
@gil_zilberfeld
The scenario
Given the Testicorn is 12 steps
from the victim
When it tries to kill the victim
Then it succeeds
@gil_zilberfeld
The other scenario
Given the Testicorn is 50 steps
from the victim
When it tries to kill the victim
Then it fails
@gil_zilberfeld@gil_zilberfeld
Cucumber example
@gil_zilberfeld
Setting up Eclipse with Cucumber
◉ “Help”->”Add new software” from: Cucumber.io
◉ Create simple maven project
◉ Add the Cucumber dependencies
◉ Add to src/test/java a new .feature file
◉ Run and copy the generated errors to create
functions
@gil_zilberfeld
Setting up VS with SpecFlow
◉ Add the SpecFlow extenstion
◉ Create a unit test project
◉ Get SpecFlow.MsTest from NuGet
◉ Add New Item -> SpecFlow Feature file
◉ Write scenarios
◉ Right click -> Generate Step Definitions
@gil_zilberfeld
Summary
◉ It’s all about the shared understanding
◉ Shared language between users, product
people, developers and testers
◉ Gherkin tests help when there is code that is not
a shared language
◉ Part of the professional tool belt
@gil_zilberfeld
Thanks!
ANY QUESTIONS?
You can find me at:
@gil_zilberfeld
http://www.GilZilberfeld.com
http://www.EverydayUnitTesting.com

More Related Content

What's hot

TDD For The Rest Of Us
TDD For The Rest Of UsTDD For The Rest Of Us
TDD For The Rest Of Us
TEST Huddle
 
Zen and the Art of Test Maintenance
Zen and the Art of Test MaintenanceZen and the Art of Test Maintenance
Zen and the Art of Test Maintenance
Gil Zilberfeld
 
Trust your containers in production as was presented at DockerCon 2017
Trust your containers in production as was presented at DockerCon 2017Trust your containers in production as was presented at DockerCon 2017
Trust your containers in production as was presented at DockerCon 2017
Baruch Sadogursky
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
Lukasz Dobrzanski
 
Weekly update 7
Weekly update 7Weekly update 7
Weekly update 7
Fatima B
 
AAU UX club presentation - April 23, 2015
AAU UX club presentation - April 23, 2015AAU UX club presentation - April 23, 2015
AAU UX club presentation - April 23, 2015
Cassy Rowe
 
Global Day of Coderetreat 2013 Chennai - JUGChennai
Global Day of Coderetreat 2013 Chennai - JUGChennaiGlobal Day of Coderetreat 2013 Chennai - JUGChennai
Global Day of Coderetreat 2013 Chennai - JUGChennai
Rajmahendra Hegde
 
Popular SEO plugin for WordPress - WordCamp Pune 2015
Popular SEO plugin for WordPress - WordCamp Pune 2015Popular SEO plugin for WordPress - WordCamp Pune 2015
Popular SEO plugin for WordPress - WordCamp Pune 2015
Alexander Gounder
 
15 Explosive Things You Should Try As An Agilist by Peter Gfader
15 Explosive Things You Should Try As An Agilist by Peter Gfader15 Explosive Things You Should Try As An Agilist by Peter Gfader
15 Explosive Things You Should Try As An Agilist by Peter Gfader
Bosnia Agile
 

What's hot (9)

TDD For The Rest Of Us
TDD For The Rest Of UsTDD For The Rest Of Us
TDD For The Rest Of Us
 
Zen and the Art of Test Maintenance
Zen and the Art of Test MaintenanceZen and the Art of Test Maintenance
Zen and the Art of Test Maintenance
 
Trust your containers in production as was presented at DockerCon 2017
Trust your containers in production as was presented at DockerCon 2017Trust your containers in production as was presented at DockerCon 2017
Trust your containers in production as was presented at DockerCon 2017
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
 
Weekly update 7
Weekly update 7Weekly update 7
Weekly update 7
 
AAU UX club presentation - April 23, 2015
AAU UX club presentation - April 23, 2015AAU UX club presentation - April 23, 2015
AAU UX club presentation - April 23, 2015
 
Global Day of Coderetreat 2013 Chennai - JUGChennai
Global Day of Coderetreat 2013 Chennai - JUGChennaiGlobal Day of Coderetreat 2013 Chennai - JUGChennai
Global Day of Coderetreat 2013 Chennai - JUGChennai
 
Popular SEO plugin for WordPress - WordCamp Pune 2015
Popular SEO plugin for WordPress - WordCamp Pune 2015Popular SEO plugin for WordPress - WordCamp Pune 2015
Popular SEO plugin for WordPress - WordCamp Pune 2015
 
15 Explosive Things You Should Try As An Agilist by Peter Gfader
15 Explosive Things You Should Try As An Agilist by Peter Gfader15 Explosive Things You Should Try As An Agilist by Peter Gfader
15 Explosive Things You Should Try As An Agilist by Peter Gfader
 

Similar to The fastest BDD crash-course ever

A Horror Story
A Horror StoryA Horror Story
A Horror Story
Gil Zilberfeld
 
The Untold User Story
The Untold User StoryThe Untold User Story
The Untold User Story
Gil Zilberfeld
 
The Whole Story - Mapping, Slicing and Figuring things out
The Whole Story - Mapping, Slicing and Figuring things outThe Whole Story - Mapping, Slicing and Figuring things out
The Whole Story - Mapping, Slicing and Figuring things out
Gil Zilberfeld
 
Introduction to BDD
Introduction to BDDIntroduction to BDD
Introduction to BDD
Gil Zilberfeld
 
Continuous Learning - The New ALM
Continuous Learning - The New ALMContinuous Learning - The New ALM
Continuous Learning - The New ALM
Gil Zilberfeld
 
Better Estimation and Planning
Better Estimation and PlanningBetter Estimation and Planning
Better Estimation and Planning
Gil Zilberfeld
 
ROI is Dead!
ROI is Dead!ROI is Dead!
ROI is Dead!
Gil Zilberfeld
 
Better Estimation and Planning
Better Estimation and PlanningBetter Estimation and Planning
Better Estimation and Planning
Gil Zilberfeld
 
Zen and the art of Test Maintenance - #TestIL Meetup Tel Aviv
Zen and the art of Test Maintenance - #TestIL Meetup Tel AvivZen and the art of Test Maintenance - #TestIL Meetup Tel Aviv
Zen and the art of Test Maintenance - #TestIL Meetup Tel Aviv
Gil Zilberfeld
 
Zen And the Art of Test Maintenance Presentation
Zen And the Art of Test Maintenance PresentationZen And the Art of Test Maintenance Presentation
Zen And the Art of Test Maintenance Presentation
Gil Zilberfeld
 
Creating A Unit Testing Strategy
Creating A Unit Testing StrategyCreating A Unit Testing Strategy
Creating A Unit Testing Strategy
Gil Zilberfeld
 
Rebooting Application Life Cycle Management
Rebooting Application Life Cycle ManagementRebooting Application Life Cycle Management
Rebooting Application Life Cycle Management
Gil Zilberfeld
 
Work
WorkWork
Planning with #NoEstimates
Planning with #NoEstimatesPlanning with #NoEstimates
Planning with #NoEstimates
Gil Zilberfeld
 
The New Agile II
The New Agile IIThe New Agile II
The New Agile II
Gil Zilberfeld
 
Testing economics101
Testing economics101Testing economics101
Testing economics101
Gil Zilberfeld
 
TDD for the rest of us...
TDD for the rest of us...TDD for the rest of us...
TDD for the rest of us...
Gil Zilberfeld
 
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
 
The Empire Tests First
The Empire Tests FirstThe Empire Tests First
The Empire Tests First
Gil Zilberfeld
 
Why TDD is Important for Everyone
Why TDD is Important for EveryoneWhy TDD is Important for Everyone
Why TDD is Important for Everyone
Gil Zilberfeld
 

Similar to The fastest BDD crash-course ever (20)

A Horror Story
A Horror StoryA Horror Story
A Horror Story
 
The Untold User Story
The Untold User StoryThe Untold User Story
The Untold User Story
 
The Whole Story - Mapping, Slicing and Figuring things out
The Whole Story - Mapping, Slicing and Figuring things outThe Whole Story - Mapping, Slicing and Figuring things out
The Whole Story - Mapping, Slicing and Figuring things out
 
Introduction to BDD
Introduction to BDDIntroduction to BDD
Introduction to BDD
 
Continuous Learning - The New ALM
Continuous Learning - The New ALMContinuous Learning - The New ALM
Continuous Learning - The New ALM
 
Better Estimation and Planning
Better Estimation and PlanningBetter Estimation and Planning
Better Estimation and Planning
 
ROI is Dead!
ROI is Dead!ROI is Dead!
ROI is Dead!
 
Better Estimation and Planning
Better Estimation and PlanningBetter Estimation and Planning
Better Estimation and Planning
 
Zen and the art of Test Maintenance - #TestIL Meetup Tel Aviv
Zen and the art of Test Maintenance - #TestIL Meetup Tel AvivZen and the art of Test Maintenance - #TestIL Meetup Tel Aviv
Zen and the art of Test Maintenance - #TestIL Meetup Tel Aviv
 
Zen And the Art of Test Maintenance Presentation
Zen And the Art of Test Maintenance PresentationZen And the Art of Test Maintenance Presentation
Zen And the Art of Test Maintenance Presentation
 
Creating A Unit Testing Strategy
Creating A Unit Testing StrategyCreating A Unit Testing Strategy
Creating A Unit Testing Strategy
 
Rebooting Application Life Cycle Management
Rebooting Application Life Cycle ManagementRebooting Application Life Cycle Management
Rebooting Application Life Cycle Management
 
Work
WorkWork
Work
 
Planning with #NoEstimates
Planning with #NoEstimatesPlanning with #NoEstimates
Planning with #NoEstimates
 
The New Agile II
The New Agile IIThe New Agile II
The New Agile II
 
Testing economics101
Testing economics101Testing economics101
Testing economics101
 
TDD for the rest of us...
TDD for the rest of us...TDD for the rest of us...
TDD for the rest of us...
 
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
 
The Empire Tests First
The Empire Tests FirstThe Empire Tests First
The Empire Tests First
 
Why TDD is Important for Everyone
Why TDD is Important for EveryoneWhy TDD is Important for Everyone
Why TDD is Important for Everyone
 

More from Gil Zilberfeld

Dirty tests and How To Clean Them
Dirty tests and How To Clean ThemDirty tests and How To Clean Them
Dirty tests and How To Clean Them
Gil Zilberfeld
 
Unit testing for Grown-ups
Unit testing for Grown-upsUnit testing for Grown-ups
Unit testing for Grown-ups
Gil Zilberfeld
 
Dependency injection and Why It Matters to Testers
Dependency injection and Why It Matters to TestersDependency injection and Why It Matters to Testers
Dependency injection and Why It Matters to Testers
Gil Zilberfeld
 
Spring Testing Features
Spring Testing FeaturesSpring Testing Features
Spring Testing Features
Gil Zilberfeld
 
Agile Intro to DevOps
Agile Intro to DevOpsAgile Intro to DevOps
Agile Intro to DevOps
Gil Zilberfeld
 
Playing games remotely
Playing games remotelyPlaying games remotely
Playing games remotely
Gil Zilberfeld
 
An agile introduction to DevOps
An agile introduction to DevOpsAn agile introduction to DevOps
An agile introduction to DevOps
Gil Zilberfeld
 
Introduction to Unit Testing
Introduction to Unit TestingIntroduction to Unit Testing
Introduction to Unit Testing
Gil Zilberfeld
 
TDD for the rest of us
TDD for the rest of usTDD for the rest of us
TDD for the rest of us
Gil Zilberfeld
 
Simple
SimpleSimple
What is wrong with agile
What is wrong with agileWhat is wrong with agile
What is wrong with agile
Gil Zilberfeld
 

More from Gil Zilberfeld (11)

Dirty tests and How To Clean Them
Dirty tests and How To Clean ThemDirty tests and How To Clean Them
Dirty tests and How To Clean Them
 
Unit testing for Grown-ups
Unit testing for Grown-upsUnit testing for Grown-ups
Unit testing for Grown-ups
 
Dependency injection and Why It Matters to Testers
Dependency injection and Why It Matters to TestersDependency injection and Why It Matters to Testers
Dependency injection and Why It Matters to Testers
 
Spring Testing Features
Spring Testing FeaturesSpring Testing Features
Spring Testing Features
 
Agile Intro to DevOps
Agile Intro to DevOpsAgile Intro to DevOps
Agile Intro to DevOps
 
Playing games remotely
Playing games remotelyPlaying games remotely
Playing games remotely
 
An agile introduction to DevOps
An agile introduction to DevOpsAn agile introduction to DevOps
An agile introduction to DevOps
 
Introduction to Unit Testing
Introduction to Unit TestingIntroduction to Unit Testing
Introduction to Unit Testing
 
TDD for the rest of us
TDD for the rest of usTDD for the rest of us
TDD for the rest of us
 
Simple
SimpleSimple
Simple
 
What is wrong with agile
What is wrong with agileWhat is wrong with agile
What is wrong with agile
 

Recently uploaded

Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 

Recently uploaded (20)

Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 

The fastest BDD crash-course ever

Editor's Notes

  1. 15 mins?
  2. Good narrative, but cannot be tested
  3. Good narrative, but cannot be tested
  4. A scenario has 3 parts, like AAA. In fact 4, also clean up. We need to specify an acceptance criteria, otherwise we can’t know if our “test” passes really or by accident. In unit tests we have Asserts. This is different than DoD For each test/story/scenario we need the same.
  5. Good narrative, but cannot be tested
  6. Good narrative, but cannot be tested
  7. Good narrative, but cannot be tested