SlideShare a Scribd company logo
1 of 71
Gauge + Taiko:
BDD for Web Revived
Dmitry Vinnik
@DmitryVinnik dvinnik.com
What are our goals?
@DmitryVinnik dvinnik.com
2
Goals
Better Understanding of BDD
Choosing Gauge vs Cucumber
Best Combo: Gauge + Taiko
@DmitryVinnik dvinnik.com
3
Setting up context
@DmitryVinnik dvinnik.com
4
Great, now what?
@DmitryVinnik dvinnik.com
5
Let’s go back to BDD
@DmitryVinnik dvinnik.com
6
Behaviour Driven
Development
@DmitryVinnik dvinnik.com
7
“BDD is as much about the collaboration
as it is about the outputs of the project.”
by Dan North
@DmitryVinnik dvinnik.com8
BDD
@DmitryVinnik dvinnik.com
9
Testing
BDD
@DmitryVinnik dvinnik.com
10
Collaboration Documentation
Ubiquitous
Language
TDD-based
Documentation
Ubiquitous
Language
TDD-based
Collaboration in BDD
@DmitryVinnik dvinnik.com
11
Specification by Example
@DmitryVinnik dvinnik.com
12
@DmitryVinnik dvinnik.com
13
Specification Workshop
BDD
@DmitryVinnik dvinnik.com
14
Collaboration Documentation
Ubiquitous
Language
TDD-based
Documentation
Ubiquitous
Language
TDD-based
Collaboration Documentation
What is the most common
documentation?
@DmitryVinnik dvinnik.com
15
Regression Tests
@DmitryVinnik dvinnik.com
16
What is the purpose?
@DmitryVinnik dvinnik.com
17
Documents
Historical State
@DmitryVinnik dvinnik.com
18
BDD Tests?
@DmitryVinnik dvinnik.com
19
Documents
Current State
@DmitryVinnik dvinnik.com
20
BDD
@DmitryVinnik dvinnik.com
21
Collaboration Documentation
Ubiquitous
Language
TDD-based
Documentation
Ubiquitous
Language
TDD-based
Collaboration DocumentationDocumentation
Ubiquitous
Language
Ubiquitous Language
Engineers Testers
Domain
Experts
@DmitryVinnik dvinnik.com
BDD
@DmitryVinnik dvinnik.com
23
Collaboration Documentation
Ubiquitous
Language
TDD-based
Documentation
Ubiquitous
Language
TDD-based
Collaboration DocumentationDocumentation
Ubiquitous
Language
Ubiquitous
Language
TDD-based
TDD
@DmitryVinnik dvinnik.com
24
Test Driven Development
@DmitryVinnik dvinnik.com
25
“TDD is building software by writing tests”
by Martin Fowler
@DmitryVinnik dvinnik.com26
In simple terms
@DmitryVinnik dvinnik.com
27
@DmitryVinnik dvinnik.com
28
Feature Test
@DmitryVinnik dvinnik.com
29
Test Feature
Enough theory
@DmitryVinnik dvinnik.com
30
BDD in Practice?
@DmitryVinnik dvinnik.com
31
Changing
Testing Paradigm
@DmitryVinnik dvinnik.com
32
@DmitryVinnik dvinnik.com
33
Arrange
Act
Assert
Given
When
Then
How to apply BDD?
@DmitryVinnik dvinnik.com
34
Cucumber
@DmitryVinnik dvinnik.com
35
Cucumber
@DmitryVinnik dvinnik.com
36
Source: https://cucumber.io
In a nutshell
@DmitryVinnik dvinnik.com
37
@DmitryVinnik dvinnik.com
38
Feature
File
Implementation
Cucumber
+
Let’s take a closer look
@DmitryVinnik dvinnik.com
39
Special Case #1
40
@DmitryVinnik dvinnik.com
Backend:
Java
Testing:
Java
41
@DmitryVinnik dvinnik.com
Is there a problem?
@DmitryVinnik dvinnik.com42
Yes, there is
@DmitryVinnik dvinnik.com43
@DmitryVinnik dvinnik.com44
Web
Tests
User
Centric
Frontend:
JS
Testing:
JS
45
@DmitryVinnik dvinnik.com
Looks complex!
@DmitryVinnik dvinnik.com
46
Time for something new!
@DmitryVinnik dvinnik.com
47
@DmitryVinnik dvinnik.com48
Gauge Taiko+ Taiko
Gauge
@DmitryVinnik dvinnik.com
49
Markdown
Scenarios
Flexible Syntax
↑ Maintenance
Plugins &
Tools
Plugins &
Tools
Gauge
@DmitryVinnik dvinnik.com
50
Markdown
Scenarios
Flexible Syntax
↑ Maintenance
Plugins &
Tools
Most common question
@DmitryVinnik dvinnik.com
51
Test Data Retrieval
@DmitryVinnik dvinnik.com
52
By Variable By Table
By File
@DmitryVinnik dvinnik.com53
Gauge Taiko+ TaikoGauge Taiko
UI Tests
@DmitryVinnik dvinnik.com
54
What’s the main
challenge?
@DmitryVinnik dvinnik.com
55
Test Flakiness
@DmitryVinnik dvinnik.com
56
Flaky UI Tests
@DmitryVinnik dvinnik.com
57
Page Structure
Changes
Page Load Time
How do we fix it?
@DmitryVinnik dvinnik.com
58
Taiko
@DmitryVinnik dvinnik.com
59
NodeJS
Library
Smart
Selectors
Implicit
Waits
Chromium
Based
Let’s see it in practice
@DmitryVinnik dvinnik.com
60
@DmitryVinnik dvinnik.com61
Gauge Taiko+
Final Piece
@DmitryVinnik dvinnik.com
62
Reporting
@DmitryVinnik dvinnik.com
63
Main question
@DmitryVinnik dvinnik.com
64
Should we revive
BDD for Web?
@DmitryVinnik dvinnik.com
65
Yes
@DmitryVinnik dvinnik.com
66
Revive and Adjust
@DmitryVinnik dvinnik.com
67
Revive and Adjust
@DmitryVinnik dvinnik.com
68
↑ Collaboration
Live Document
Ubiquitous
Language
One Size
Fits All
Call For Action
@DmitryVinnik dvinnik.com69
Evaluate
Current State
ExperimentBe Flexible
Start
Conversation
Q/A
@DmitryVinnik dvinnik.com
About Speaker
Twitter: @DmitryVinnik
Blog: dvinnik.com
LinkedIn: in/dmitry-vinnik/
Email: dmitry@dvinnik.com

More Related Content

What's hot

How I learned to time travel, or, data pipelining and scheduling with Airflow
How I learned to time travel, or, data pipelining and scheduling with AirflowHow I learned to time travel, or, data pipelining and scheduling with Airflow
How I learned to time travel, or, data pipelining and scheduling with Airflow
PyData
 

What's hot (20)

Setting up Page Object Model in Automation Framework
Setting up Page Object Model in Automation FrameworkSetting up Page Object Model in Automation Framework
Setting up Page Object Model in Automation Framework
 
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | EdurekaWhat is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
 
Test Automation and Selenium
Test Automation and SeleniumTest Automation and Selenium
Test Automation and Selenium
 
An intro to Docker, Terraform, and Amazon ECS
An intro to Docker, Terraform, and Amazon ECSAn intro to Docker, Terraform, and Amazon ECS
An intro to Docker, Terraform, and Amazon ECS
 
Open infradays 2019_msa_k8s
Open infradays 2019_msa_k8sOpen infradays 2019_msa_k8s
Open infradays 2019_msa_k8s
 
Infra as Code with Packer, Ansible and Terraform
Infra as Code with Packer, Ansible and TerraformInfra as Code with Packer, Ansible and Terraform
Infra as Code with Packer, Ansible and Terraform
 
Jenkins
JenkinsJenkins
Jenkins
 
Microservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SREMicroservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SRE
 
Testing Angular
Testing AngularTesting Angular
Testing Angular
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training Session
 
Managing Egress with Istio
Managing Egress with IstioManaging Egress with Istio
Managing Egress with Istio
 
Introduction to helm
Introduction to helmIntroduction to helm
Introduction to helm
 
웹서버 부하테스트 실전 노하우
웹서버 부하테스트 실전 노하우웹서버 부하테스트 실전 노하우
웹서버 부하테스트 실전 노하우
 
Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)
 
Flink on Kubernetes operator
Flink on Kubernetes operatorFlink on Kubernetes operator
Flink on Kubernetes operator
 
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
 
How I learned to time travel, or, data pipelining and scheduling with Airflow
How I learned to time travel, or, data pipelining and scheduling with AirflowHow I learned to time travel, or, data pipelining and scheduling with Airflow
How I learned to time travel, or, data pipelining and scheduling with Airflow
 
Gitlab ci-cd
Gitlab ci-cdGitlab ci-cd
Gitlab ci-cd
 
A Deep Dive into Spark SQL's Catalyst Optimizer with Yin Huai
A Deep Dive into Spark SQL's Catalyst Optimizer with Yin HuaiA Deep Dive into Spark SQL's Catalyst Optimizer with Yin Huai
A Deep Dive into Spark SQL's Catalyst Optimizer with Yin Huai
 
Create an architecture for web test automation
Create an architecture for web test automationCreate an architecture for web test automation
Create an architecture for web test automation
 

Similar to Gauge + Taiko, BDD for Web Revived

Engineer in Test: Bridging the Gap
Engineer in Test: Bridging the GapEngineer in Test: Bridging the Gap
Engineer in Test: Bridging the Gap
Dmitry Vinnik
 
Whats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docxWhats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docx
cooperapleh
 
Whats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docxWhats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docx
eubanksnefen
 
Whats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docxWhats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docx
helzerpatrina
 

Similar to Gauge + Taiko, BDD for Web Revived (20)

Domain Driven Testing: Know What You’re Doing
Domain Driven Testing: Know What You’re DoingDomain Driven Testing: Know What You’re Doing
Domain Driven Testing: Know What You’re Doing
 
Testing at Scale at Meta and Salesforce
Testing at Scale at Meta and SalesforceTesting at Scale at Meta and Salesforce
Testing at Scale at Meta and Salesforce
 
Uphill Battle of Mobile Visual Regression
Uphill Battle of Mobile Visual RegressionUphill Battle of Mobile Visual Regression
Uphill Battle of Mobile Visual Regression
 
Engineer in Test: Bridging the Gap
Engineer in Test: Bridging the GapEngineer in Test: Bridging the Gap
Engineer in Test: Bridging the Gap
 
Testing React with Jest: Validate Your Components Quickly!
Testing React with Jest: Validate Your Components Quickly!Testing React with Jest: Validate Your Components Quickly!
Testing React with Jest: Validate Your Components Quickly!
 
Testing Svelte with Jest: Validate Your Components Quickly!
Testing Svelte with Jest: Validate Your Components Quickly!Testing Svelte with Jest: Validate Your Components Quickly!
Testing Svelte with Jest: Validate Your Components Quickly!
 
Hands on React Native: From Zero to Hero
Hands on React  Native:  From Zero to HeroHands on React  Native:  From Zero to Hero
Hands on React Native: From Zero to Hero
 
Hands-on React Native: From Zero to Hero
Hands-on React Native: From Zero to HeroHands-on React Native: From Zero to Hero
Hands-on React Native: From Zero to Hero
 
An Introduction to BIM.ppsx
An Introduction to BIM.ppsxAn Introduction to BIM.ppsx
An Introduction to BIM.ppsx
 
IDC Keynote: The Seven Transformations IT Solution Providers Must Confront
IDC Keynote: The Seven Transformations IT Solution Providers Must ConfrontIDC Keynote: The Seven Transformations IT Solution Providers Must Confront
IDC Keynote: The Seven Transformations IT Solution Providers Must Confront
 
BDD in Action - Devoxx 2014
BDD in Action - Devoxx 2014BDD in Action - Devoxx 2014
BDD in Action - Devoxx 2014
 
Droid Beacons with Xamarin
Droid Beacons with XamarinDroid Beacons with Xamarin
Droid Beacons with Xamarin
 
Home Design in SketchUp Pro
Home Design in SketchUp ProHome Design in SketchUp Pro
Home Design in SketchUp Pro
 
Better Start: Enforcing Best Engineering Practices with Kotlin
Better Start: Enforcing Best Engineering Practices with KotlinBetter Start: Enforcing Best Engineering Practices with Kotlin
Better Start: Enforcing Best Engineering Practices with Kotlin
 
Whats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docxWhats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docx
 
Whats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docxWhats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docx
 
Whats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docxWhats the BIM IdeaWhy does this happenProjec.docx
Whats the BIM IdeaWhy does this happenProjec.docx
 
數據架構導入經驗談
數據架構導入經驗談數據架構導入經驗談
數據架構導入經驗談
 
LeanUX2015.KanbanforDevops
LeanUX2015.KanbanforDevopsLeanUX2015.KanbanforDevops
LeanUX2015.KanbanforDevops
 
Video: The State of the Solid State Drive SSD
Video: The State of the Solid State Drive SSDVideo: The State of the Solid State Drive SSD
Video: The State of the Solid State Drive SSD
 

More from Dmitry Vinnik

More from Dmitry Vinnik (17)

Leadership in Open Source and Why Companies Care
Leadership in Open Source and Why Companies CareLeadership in Open Source and Why Companies Care
Leadership in Open Source and Why Companies Care
 
Maximizing React Speed: Hands-On Guide to Debugging and Optimizing React Appl...
Maximizing React Speed: Hands-On Guide to Debugging and Optimizing React Appl...Maximizing React Speed: Hands-On Guide to Debugging and Optimizing React Appl...
Maximizing React Speed: Hands-On Guide to Debugging and Optimizing React Appl...
 
Cross-Platform CSS (Yes, it's Possible!) with Yoga
Cross-Platform CSS (Yes, it's Possible!) with YogaCross-Platform CSS (Yes, it's Possible!) with Yoga
Cross-Platform CSS (Yes, it's Possible!) with Yoga
 
Documentation Made Easy with Docusaurus
Documentation Made Easy with DocusaurusDocumentation Made Easy with Docusaurus
Documentation Made Easy with Docusaurus
 
Fixing Broken Windows: Dealing with Legacy Systems, Poor Quality and Gaps
Fixing Broken Windows: Dealing with Legacy Systems, Poor Quality and GapsFixing Broken Windows: Dealing with Legacy Systems, Poor Quality and Gaps
Fixing Broken Windows: Dealing with Legacy Systems, Poor Quality and Gaps
 
Ent: Making Data Easy in Go
Ent: Making Data Easy in GoEnt: Making Data Easy in Go
Ent: Making Data Easy in Go
 
The 10,000 Steps of Open Source Project Health
The 10,000 Steps of Open Source Project HealthThe 10,000 Steps of Open Source Project Health
The 10,000 Steps of Open Source Project Health
 
Developing Lightning Components for Communities.pptx
Developing Lightning Components for Communities.pptxDeveloping Lightning Components for Communities.pptx
Developing Lightning Components for Communities.pptx
 
Remote Work: Gateway to Freedom
Remote Work: Gateway to FreedomRemote Work: Gateway to Freedom
Remote Work: Gateway to Freedom
 
Kindness Engineering: Focusing on What Matters
Kindness Engineering: Focusing on What MattersKindness Engineering: Focusing on What Matters
Kindness Engineering: Focusing on What Matters
 
Modern Web Testing: Going Beyond Selenium
Modern Web Testing: Going Beyond SeleniumModern Web Testing: Going Beyond Selenium
Modern Web Testing: Going Beyond Selenium
 
Do you even Function? Guiding Through Functional Interfaces
Do you even Function? Guiding Through Functional InterfacesDo you even Function? Guiding Through Functional Interfaces
Do you even Function? Guiding Through Functional Interfaces
 
From Robotium to Appium: Choose your Journey
From Robotium to Appium: Choose your Journey From Robotium to Appium: Choose your Journey
From Robotium to Appium: Choose your Journey
 
Stress Driven Development, and How to Avoid It
Stress Driven Development, and How to Avoid ItStress Driven Development, and How to Avoid It
Stress Driven Development, and How to Avoid It
 
Back to the CompletableFuture: Concurrency in Action
Back to the CompletableFuture: Concurrency in ActionBack to the CompletableFuture: Concurrency in Action
Back to the CompletableFuture: Concurrency in Action
 
Modern Web Testing: Going Beyond Selenium
Modern Web Testing: Going Beyond Selenium Modern Web Testing: Going Beyond Selenium
Modern Web Testing: Going Beyond Selenium
 
Build Tests to Build Websites
Build Tests to Build WebsitesBuild Tests to Build Websites
Build Tests to Build Websites
 

Recently uploaded

JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)
Max Lee
 

Recently uploaded (20)

AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAGAI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
 
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
Entropy, Software Quality, and Innovation (presented at Princeton Plasma Phys...
 
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdfStrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
 
Studiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting softwareStudiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting software
 
The Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion ProductionThe Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion Production
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
How to install and activate eGrabber JobGrabber
How to install and activate eGrabber JobGrabberHow to install and activate eGrabber JobGrabber
How to install and activate eGrabber JobGrabber
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by Design
 
AI Hackathon.pptx
AI                        Hackathon.pptxAI                        Hackathon.pptx
AI Hackathon.pptx
 
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
 
CompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfCompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdf
 
Workforce Efficiency with Employee Time Tracking Software.pdf
Workforce Efficiency with Employee Time Tracking Software.pdfWorkforce Efficiency with Employee Time Tracking Software.pdf
Workforce Efficiency with Employee Time Tracking Software.pdf
 
Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024
 
What need to be mastered as AI-Powered Java Developers
What need to be mastered as AI-Powered Java DevelopersWhat need to be mastered as AI-Powered Java Developers
What need to be mastered as AI-Powered Java Developers
 
5 Reasons Driving Warehouse Management Systems Demand
5 Reasons Driving Warehouse Management Systems Demand5 Reasons Driving Warehouse Management Systems Demand
5 Reasons Driving Warehouse Management Systems Demand
 
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfA Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
 
JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)
 
Agnieszka Andrzejewska - BIM School Course in Kraków
Agnieszka Andrzejewska - BIM School Course in KrakówAgnieszka Andrzejewska - BIM School Course in Kraków
Agnieszka Andrzejewska - BIM School Course in Kraków
 
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
KLARNA -  Language Models and Knowledge Graphs: A Systems ApproachKLARNA -  Language Models and Knowledge Graphs: A Systems Approach
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
 
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdfMicrosoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
 

Gauge + Taiko, BDD for Web Revived

Editor's Notes

  1. http://todomvc.com http://todomvc.com/examples/angularjs/#/
  2. http://todomvc.com http://todomvc.com/examples/angularjs/#/
  3. http://todomvc.com http://todomvc.com/examples/angularjs/#/
  4. Source: https://dannorth.net/whats-in-a-story/
  5. specification worksphost, three amigos business people sit down with programmers and discuss features to implement with testers (three amigos) together, write down examples how software should behave and write down cucumber scenarios
  6. specification worksphost, three amigos business people sit down with programmers and discuss features to implement with testers (three amigos) together, write down examples how software should behave and write down cucumber scenarios
  7. specification worksphost, three amigos business people sit down with programmers and discuss features to implement with testers (three amigos) together, write down examples how software should behave and write down cucumber scenarios
  8. BDD is not for testing!
  9. BDD is not for testing!
  10. Example???
  11. BDD is not for testing!
  12. BDD is not for testing!
  13. Source: https://dannorth.net/whats-in-a-story/
  14. BDD is not for testing!
  15. BDD is not for testing!
  16. BDD is not for testing!
  17. BDD is not for testing!
  18. BDD is not for testing!
  19. BDD is not for testing!
  20. BDD is not for testing!
  21. BDD is not for testing!
  22. BDD is not for testing!
  23. BDD is not for testing!
  24. BDD is not for testing!
  25. BDD is not for testing!
  26. BDD is not for testing!
  27. markdown Closest to natural language Syntax No restrictions Plugins and tools Reporting Autocomplete Maintenance and Readability Not BDD tool, build for testing
  28. https://gauge.org/plugins/#language
  29. markdown Closest to natural language Syntax No restrictions Plugins and tools Reporting Autocomplete Maintenance and Readability Not BDD tool, build for testing
  30. BDD is not for testing!
  31. BDD is not for testing!
  32. BDD is not for testing!
  33. BDD is not for testing!
  34. BDD is not for testing!
  35. REPL
  36. Yes, it is more practical version - dogmatism is not good for anyone
  37. Yes, it is more practical version - dogmatism is not good for anyone
  38. Yes, it is more practical version - dogmatism is not good for anyone
  39. Yes, it is more practical version - dogmatism is not good for anyone
  40. Yes, it is more practical version - dogmatism is not good for anyone
  41. Yes, it is more practical version - dogmatism is not good for anyone
  42. Yes, it is more practical version - dogmatism is not good for anyone
  43. Yes, it is more practical version - dogmatism is not good for anyone
  44. BDD requires a bying from all stakeholders