SlideShare a Scribd company logo
1CONFIDENTIAL
BDD to Do or not to Do
Roman Iovlev Anton Shapin
2CONFIDENTIAL
ROMAN IOVLEV
Chief QA Automation
In Testing more than 12 years
In Testing Automation 10 years
3CONFIDENTIAL
Let’s bdd it
4CONFIDENTIAL
EXPERT
5CONFIDENTIAL
EXPERT
6CONFIDENTIAL
• Layer, Regex steps
• Scripted poor language
• DDT, step to step
• No classes
• Debug
• Navigation…
PAIN
7CONFIDENTIAL
• Time:
• BDD layer support
• Workarounds with before and in data flow
• Tests support (debug, navigation…)
• …
• Stability
• Complexity
• …
• No profit (((
LOOSES
8CONFIDENTIAL
WHY?
9CONFIDENTIAL
WHAT IS BDD?
10CONFIDENTIAL
Scenario: Sum two numbers
• Given I Have Calculator
• When I calculate sum of ‘2’ and ‘3’
• Then I get result ‘5’
TESTS IN GHERKIN
11CONFIDENTIAL
public void sumTwoNumbers() {
Calculator calc = new Calculator();
int sum = calc.sum(2,3);
areEquals(sum, 5);
}
TESTS IN GHERKIN
Scenario: Sum two numbers
• Given I Have Calculator
• When I calculate sum of ‘2’ and ‘3’
• Then I get result ‘5’
public void sumTwoNumbers() {
I.HaveCalculator();
I.CalculateSum(2,3);
I.GetResult(5);
}
STEPS
PATTERN
13CONFIDENTIAL
We write 200 tests per year…
We write 300 tests per year!
Really? And what about thousands of tests?
PROFIT?
14CONFIDENTIAL
In 90% or even 95%
cases we don’t need
BDD on projects
NO REASONS TO USE BDD
15CONFIDENTIAL
• homePage.open();
• loginForm.loginAs(admin)
• mainMenu.select(Search);
• products.filterBy(“MacBook”)
• Assert.eachOf(SearchResults)
.contains(“MacBook”);
CODE LIKE BDD
16CONFIDENTIAL
• Write tests faster
• More stable
• More obvious, clear and simple...
WRITE NO BDD
17CONFIDENTIAL
WHEN IT IS GOOD TO USE BDD?
18CONFIDENTIAL
HOW IT IS GOOD TO USE BDD?
19CONFIDENTIAL
CONTACTS
roman.Iovlev
roman_iovlev@epam.com

More Related Content

PPTX
Webinar: Taking your JMeter Test Monitoring To The Next Level (Ft. PerfAcademy)
PDF
Partial Continuations, Lessons From JavaScript and Guile in 2012 (Quasiconf 2...
PPTX
Поиск уязвимостей с использованием статического анализа кода
PPTX
Развитие или смерть
PPTX
Abseil - let the savior come?
PPTX
C++ в играх, больших и не очень
PDF
C++Now Trip Report
PPTX
C++ in kernel mode
Webinar: Taking your JMeter Test Monitoring To The Next Level (Ft. PerfAcademy)
Partial Continuations, Lessons From JavaScript and Guile in 2012 (Quasiconf 2...
Поиск уязвимостей с использованием статического анализа кода
Развитие или смерть
Abseil - let the savior come?
C++ в играх, больших и не очень
C++Now Trip Report
C++ in kernel mode

Viewers also liked (16)

PPTX
Субъекторная модель
PDF
Обработка потока данных на примере deep packet inspection: внутренняя архитек...
PPTX
Benchmark it
PPTX
Mixing C++ & Python II: Pybind11
PPTX
C++ and Assembly: Debugging and Reverse Engineering
PPTX
Ускоряем сборку С++ проектов. Практика использования unity-сборок
PDF
Actors for fun and profit
PDF
The beast is becoming functional
PDF
Restinio - header-only http and websocket server
PPTX
Analysis and interpretation of monitoring data
PDF
MxxRu::externals: Repositoryless Dependency Manager
PDF
(Не)чёткий поиск
PPTX
Слои тестового фрамеворка. Что? Где? Когда?
PDF
Метаданные для кластера: гонка key-value-героев / Руслан Рагимов, Светлана Ла...
PDF
Честное перформанс-тестирование / Дмитрий Пивоваров (ZeroTurnaround)
PPTX
C++ Core Guidelines
Субъекторная модель
Обработка потока данных на примере deep packet inspection: внутренняя архитек...
Benchmark it
Mixing C++ & Python II: Pybind11
C++ and Assembly: Debugging and Reverse Engineering
Ускоряем сборку С++ проектов. Практика использования unity-сборок
Actors for fun and profit
The beast is becoming functional
Restinio - header-only http and websocket server
Analysis and interpretation of monitoring data
MxxRu::externals: Repositoryless Dependency Manager
(Не)чёткий поиск
Слои тестового фрамеворка. Что? Где? Когда?
Метаданные для кластера: гонка key-value-героев / Руслан Рагимов, Светлана Ла...
Честное перформанс-тестирование / Дмитрий Пивоваров (ZeroTurnaround)
C++ Core Guidelines
Ad

Similar to Battle: BDD vs notBDD (20)

PPTX
When to embrace Behavior Driven Development?
PDF
When to Embrace Behavior Driven Development : Presented by Ranjith Tharayil
PDF
BDD with Gauge
PDF
Gauge your BDD Test (vodQA Hyderabad)
PDF
Gauge your BDD Test (vodQA Hyderabad)
PPTX
Behavior-Driven Development (BDD) and Its Impact on Software Testing.pptx
PDF
TDD vs. BDD: A Practical Comparison for Modern Development Teams
PDF
Understanding QA Kampala
PPTX
When to embrace behavior driven development
PDF
Atagg2015 BDD in Test pyramid
PPTX
Implementing BDD at scale for agile and DevOps teams
ODP
Behaviour Driven Development Hands-on
PPTX
Building In Quality: The Beauty Of Behavior Driven Development (BDD)
PDF
Behavior driven development_tutorial
PDF
TDD vs BDD_ Which Development Approach is Best for Your Project.pdf
PDF
It's Testing, Jim, but not as we know it - BDD for Testers
PDF
Making the Move to Behavior-Driven Development
PPTX
Introduction to BDD
PDF
How BDD enables True CI/CD
PDF
ITB2017 - Intro to Behavior Driven Development
When to embrace Behavior Driven Development?
When to Embrace Behavior Driven Development : Presented by Ranjith Tharayil
BDD with Gauge
Gauge your BDD Test (vodQA Hyderabad)
Gauge your BDD Test (vodQA Hyderabad)
Behavior-Driven Development (BDD) and Its Impact on Software Testing.pptx
TDD vs. BDD: A Practical Comparison for Modern Development Teams
Understanding QA Kampala
When to embrace behavior driven development
Atagg2015 BDD in Test pyramid
Implementing BDD at scale for agile and DevOps teams
Behaviour Driven Development Hands-on
Building In Quality: The Beauty Of Behavior Driven Development (BDD)
Behavior driven development_tutorial
TDD vs BDD_ Which Development Approach is Best for Your Project.pdf
It's Testing, Jim, but not as we know it - BDD for Testers
Making the Move to Behavior-Driven Development
Introduction to BDD
How BDD enables True CI/CD
ITB2017 - Intro to Behavior Driven Development
Ad

More from COMAQA.BY (20)

PDF
Тестирование аналогов инсталлируемых приложений (Android Instant Apps, Progre...
PPTX
Anton semenchenko. Comaqa Spring 2018. Nine circles of hell. Antipatterns in ...
PPTX
Vivien Ibironke Ibiyemi. Comaqa Spring 2018. Enhance your Testing Skills With...
PPTX
Roman Soroka. Comaqa Spring 2018. Глобальный обзор процесса QA и его важность
PPTX
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...
PPTX
Vladimir Polyakov. Comaqa Spring 2018. Особенности тестирования ПО в предметн...
PPTX
Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...
PPTX
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
PPTX
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
PPTX
Vadim Zubovich. Comaqa Spring 2018. Красивое тестирование производительности.
PPTX
Alexander Andelkovic. Comaqa Spring 2018. Using Artificial Intelligence to Te...
PPTX
Моя роль в конфликте
PPTX
Организация приемочного тестирования силами матерых тестировщиков
PPTX
Системный взгляд на параллельный запуск Selenium тестов
PPTX
Эффективная работа с рутинными задачами
PPTX
Как стать синьором
PPTX
Open your mind for OpenSource
PPTX
JDI 2.0. Not only UI testing
PPTX
Out of box page object design pattern, java
PDF
Static and dynamic Page Objects with Java \ .Net examples
Тестирование аналогов инсталлируемых приложений (Android Instant Apps, Progre...
Anton semenchenko. Comaqa Spring 2018. Nine circles of hell. Antipatterns in ...
Vivien Ibironke Ibiyemi. Comaqa Spring 2018. Enhance your Testing Skills With...
Roman Soroka. Comaqa Spring 2018. Глобальный обзор процесса QA и его важность
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...
Vladimir Polyakov. Comaqa Spring 2018. Особенности тестирования ПО в предметн...
Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
Vadim Zubovich. Comaqa Spring 2018. Красивое тестирование производительности.
Alexander Andelkovic. Comaqa Spring 2018. Using Artificial Intelligence to Te...
Моя роль в конфликте
Организация приемочного тестирования силами матерых тестировщиков
Системный взгляд на параллельный запуск Selenium тестов
Эффективная работа с рутинными задачами
Как стать синьором
Open your mind for OpenSource
JDI 2.0. Not only UI testing
Out of box page object design pattern, java
Static and dynamic Page Objects with Java \ .Net examples

Recently uploaded (20)

PDF
STKI Israel Market Study 2025 version august
PDF
DP Operators-handbook-extract for the Mautical Institute
PPTX
cloud_computing_Infrastucture_as_cloud_p
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Hindi spoken digit analysis for native and non-native speakers
PPTX
OMC Textile Division Presentation 2021.pptx
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
Getting Started with Data Integration: FME Form 101
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Web App vs Mobile App What Should You Build First.pdf
PPTX
observCloud-Native Containerability and monitoring.pptx
PDF
A comparative study of natural language inference in Swahili using monolingua...
STKI Israel Market Study 2025 version august
DP Operators-handbook-extract for the Mautical Institute
cloud_computing_Infrastucture_as_cloud_p
Programs and apps: productivity, graphics, security and other tools
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Hindi spoken digit analysis for native and non-native speakers
OMC Textile Division Presentation 2021.pptx
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Final SEM Unit 1 for mit wpu at pune .pptx
Zenith AI: Advanced Artificial Intelligence
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
Developing a website for English-speaking practice to English as a foreign la...
Assigned Numbers - 2025 - Bluetooth® Document
WOOl fibre morphology and structure.pdf for textiles
Getting Started with Data Integration: FME Form 101
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Web App vs Mobile App What Should You Build First.pdf
observCloud-Native Containerability and monitoring.pptx
A comparative study of natural language inference in Swahili using monolingua...

Battle: BDD vs notBDD

Editor's Notes

  • #4: Как часто я это слышу от заказчиков. Прибегают мы тут послушали на конференции, почитали в сети BDD – давайте внедрять на нашем проекте! А что в итоге?
  • #5: Как часто я это слышу от заказчиков. Прибегают мы тут послушали на конференции, почитали в сети BDD – давайте внедрять на нашем проекте! А что в итоге?
  • #6: Как часто я это слышу от заказчиков. Прибегают мы тут послушали на конференции, почитали в сети BDD – давайте внедрять на нашем проекте! А что в итоге?
  • #8: А в итоге получается баба у разбитого корыта Можно задать вопрос тем кто работал с BDD, а вам доставляет удовольствие работать с таким подходом? Поднимите руки кому нравится? ... А кто не навидит? ))) ... Я думаю у Антона есть что возразить?
  • #9: Я бы хотел поговорить о BDD, думаю многие здесь в зале в курсе что это такое. Кто в курсе? ... Отлично, ну достаточно многие слышали что-то BDD Часто на собеседовании на вопрос «что такое BDD» отвечают это что-то вроде «писать тесты в геркин нотации, Given-When-Then» Но это боооольшое заблуждение, я бы хотел спросить у тех кто знаком с этим подходом, зачем оно вообще нужно? Какая цель? ... Давайте дадим возможность Антону – нашему паладину BDD, ответить на этот вопрос. Да не легкая сегодня ему досталась доля )))
  • #18: Я бы хотел поговорить о BDD, думаю многие здесь в зале в курсе что это такое. Кто в курсе? ... Отлично, ну достаточно многие слышали что-то BDD Часто на собеседовании на вопрос «что такое BDD» отвечают это что-то вроде «писать тесты в геркин нотации, Given-When-Then» Но это боооольшое заблуждение, я бы хотел спросить у тех кто знаком с этим подходом, зачем оно вообще нужно? Какая цель? ... Давайте дадим возможность Антону – нашему паладину BDD, ответить на этот вопрос. Да не легкая сегодня ему досталась доля )))
  • #19: Я бы хотел поговорить о BDD, думаю многие здесь в зале в курсе что это такое. Кто в курсе? ... Отлично, ну достаточно многие слышали что-то BDD Часто на собеседовании на вопрос «что такое BDD» отвечают это что-то вроде «писать тесты в геркин нотации, Given-When-Then» Но это боооольшое заблуждение, я бы хотел спросить у тех кто знаком с этим подходом, зачем оно вообще нужно? Какая цель? ... Давайте дадим возможность Антону – нашему паладину BDD, ответить на этот вопрос. Да не легкая сегодня ему досталась доля )))