SlideShare a Scribd company logo
BDD/TDD BASED AUTOMATION ON
SHORT-TERM PROJECT ON REAL
EXAMPLE
TERMS & DEFINITIONS
TDD
BDD
KPI
ROI
INITIAL PROJECT INFO
 BUSINNES AREA: Provision of services
 PRODUCT CATEGORY: Internet resource
 TECH STACK:
 .Net platform
 C#, JavaScript, HTML5
 Project duration:
 1st phase – 2 Months
 2nd phase – 4 Months
INITIAL ESTIMATIONS
 Regression, localization and cross-browser testing
activities:
150 – 180 hours
 TA implementation (basing on project backlog):
 1st phase – up to 40 hours
 2nd phase – up to 130 hours
 Expected ROI: 0.8 – 1.2
RISKS
 NO TIME FOR AUTOMATION TO GET PROFIT:
 Only two regression rounds
 Cross-browser testing could be limited to 1 round
 Number of browsers/devices could be decreased
 AUTOMATION COMPLEXITY:
 Test flows and scenarios could be changed
 UI of the system can be changed
 Some flows could be too complex to automate
AUTOMATION GOALS (INDIRECT BENEFITS)
 Fast feedback on new features
 New tests for automated areas/features
 No need in manual regression
 Continuous quality control
 Adding new browsers/devices to test
scope will take 1-3 hours
PROCESS APPROACHES
 Automate acceptance flows
 TDD/BDD usage:
 Acceptance test flows are defined before start of
feature development
 Automated tests are implemented in parallel with
feature development
 Automated tests are executed just after feature
delivery to test staging
 Passed automated tests are part of DoD for
feature development
 Same process for new features, bug fixes and
CRs
 Tests are integrated to CI
PROCESS APPROACHES
 Tests are executed in CI at least once a day
 Test Automation engineer integration to project:
 Daily meetings
 Involved only for short term automation tasks
during sprint
 Tasks for each sprint are processed as small
fixed price projects
 Main TA KPI: time to get test results after feature
deliver on staging
 Secondary KPI: ROI calculation on each sprint
TECH APPROACHES
SpecFlow based framework:
 Layered structure
 Gherkin for top level test logic description (KDD/BDD)
 Examples used for DDT
 WebDriver for UI interactions
Framework
FRAMEWORK STRUCTURE
FEATURES LAYER
STEPS LAYER
PAGE OBJECTS LAYER SERVICES LAYER MODELS
WEB DRIVER SERVER API
Layers
FRAMEWORK STRUCTURE
 Test cases are written as a user stories describing real
user action flow.
 Test scenarios written on Gherkin language and using
Given, When, Then notation.
Features layer
Given [Some Context]
When [Some Actions is performed]
Then [This should be the result]
FRAMEWORK STRUCTURE
 Test steps represent the level of abstraction between
your Page Objects and higher-level stories
 Divide test implementation from test logic
 DRY
Steps layer
FRAMEWORK STRUCTURE
 PageObject pattern models UI areas as objects within
the test code
 UI area logic is divided from test implementation logic
 DRY
 Driver usage is encapsulated
Page Objects Layer
FRAMEWORK STRUCTURE
 HTTP requests as objects within the test code
 Requests logic is divided from test implementation logic
 DRY
 HTTP request usage is encapsulated
Services layer
TECH APPROACHES
 SpecFlow Context Injection
 Upside down development:
 Start from Features level (steps unimplemented or
mocked)
 Steps implementation without real PageObject (PO and
it’s methods are mocked)
 Page object is last one to be implemented with known
API
 IDE method generation usage
Dev practices
TECH APPROACHES
Dev practices (example)
TECH APPROACHES
Dev practices (example)
TA RESULTS
 TEST TYPES COVERED:
 Acceptance testing
 Integration testing
 Regression testing
 PRODUCT INTERFACE INTERACTED:
 Web UI – Test scenario execution,
Test data generation
 Web API – Test scenario execution
 Mobile API – Test scenario execution
TA RESULTS
QUANTITATIVE INDICATORS:
 Total time spent: 95 hours
 Time for scenarios implementation: 65 hours
 Time for tests support: 17 hours
 Framework configuration: 4 hours
 Demo, planning: 9 hours
 Scenarios implemented: 45 scenarios with 145 different
tests
 Average time for 1 scenario: 1,3 hour
 About 300 test runs on CI server
TA RESULTS
 ROI:
 ROI of phase one: about 1.1
 ROI of phase two: about 2
 OTHER BENEFITS:
 Running tests 24/7
 Fast feedback (0,5 – 1 hour after feature was
implemented)
 Continuity
 Speed (run time for all regression tests takes 26
minutes for 145 tests)
 Test data generation
RESULTS
 Successful automation even with occurred
risks
 Product was successfully delivered to
Customer
QUESTIONS?
THANKS FOR YOUR ATTENTION!
Useful books:

More Related Content

PPTX
Behind the demo, Alexey Syrotyuk
PPTX
Effective performance evaluation as part of a CI approach - Mission Impossible?
PPTX
(Agile) engineering best practices - What every project manager should know
PPTX
The Three Pillars Approach to Your Agile Test Strategy
PDF
Test automation - What? Why? How?
PDF
Common Web UI Problems Transforming Manual to Automation
PPTX
Test Early, Test Often, Test Left
PDF
Software Verification in Academia and Business
Behind the demo, Alexey Syrotyuk
Effective performance evaluation as part of a CI approach - Mission Impossible?
(Agile) engineering best practices - What every project manager should know
The Three Pillars Approach to Your Agile Test Strategy
Test automation - What? Why? How?
Common Web UI Problems Transforming Manual to Automation
Test Early, Test Often, Test Left
Software Verification in Academia and Business

What's hot (20)

PDF
Mobile Video Games Testing Principles - Benjamin Poirrier
PDF
Agile Test Automation: Truth, Oxymoron or Lie?
DOCX
Selenium Testing Project report
PPT
Agile Engineering Practices
PDF
Test Design with Action-based Testing Methodology - Ngo Hoang Minh
PPT
UML
PDF
Webinar "Load Testing e Performance Monitoring con NeoLoad e NeoSense"
PPTX
How to Design a Successful Test Automation Strategy
PDF
A Novel Approach of Automation Test for Software Monitoring Solution - Tran S...
PPTX
Defect root cause analysis, Андрей Титаренко
PPTX
HPE | Network Virtualization | POC
PPTX
Agile Test Automation
PPTX
Elements of a Test Framework
PPTX
Defect free development - QS Tag2019
PPTX
Testing Your Software Testers
PPTX
Manual Vs Automation Testing
PPTX
Testing NodeJS, REST APIs and MongoDB with UFT
PPT
Reviews checklists
PDF
6 Traits of a Successful Test Automation Architecture
PPT
Streamlining EMC Documentum Web Publisher to Increase Web Author Productivity
Mobile Video Games Testing Principles - Benjamin Poirrier
Agile Test Automation: Truth, Oxymoron or Lie?
Selenium Testing Project report
Agile Engineering Practices
Test Design with Action-based Testing Methodology - Ngo Hoang Minh
UML
Webinar "Load Testing e Performance Monitoring con NeoLoad e NeoSense"
How to Design a Successful Test Automation Strategy
A Novel Approach of Automation Test for Software Monitoring Solution - Tran S...
Defect root cause analysis, Андрей Титаренко
HPE | Network Virtualization | POC
Agile Test Automation
Elements of a Test Framework
Defect free development - QS Tag2019
Testing Your Software Testers
Manual Vs Automation Testing
Testing NodeJS, REST APIs and MongoDB with UFT
Reviews checklists
6 Traits of a Successful Test Automation Architecture
Streamlining EMC Documentum Web Publisher to Increase Web Author Productivity
Ad

Similar to BDD/TDD based automation on short-term project on real example, Igor Kokoz (20)

PDF
Modernizing Testing as Apps Re-Architect
PDF
VishalSinha_Resume_Ora
PPTX
PSA Presentation on Rail Projects
PPTX
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
PPTX
SV Training Intro - 20181129 4.pptx
PPTX
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
PDF
Neotys PAC 2018 - Ramya Ramalinga Moorthy
PDF
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
PDF
Back to the Future: Containerize Legacy Applications
PDF
Continuous Integration for z using Test Data Management and Application D...
PPTX
week2.pptx Internet communication Technology
DOCX
Felix Ramos_Automation Programmer Analyst_QA
PPT
Behavior Driven Development by Example
PPTX
Waseem Hanif SQE Project.pptx software Quality
PPTX
3.10.22 Philly Basis Presentation.pptx
PPTX
TGT#19 - 3 seconds or less - Piotr Liss
PPTX
Emergent architecture- a casestudy TREDS
DOCX
Preetham Paulose
PPTX
Cloud Networking
PDF
DevOps CI Automation Continuous Integration
Modernizing Testing as Apps Re-Architect
VishalSinha_Resume_Ora
PSA Presentation on Rail Projects
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
SV Training Intro - 20181129 4.pptx
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
Neotys PAC 2018 - Ramya Ramalinga Moorthy
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Back to the Future: Containerize Legacy Applications
Continuous Integration for z using Test Data Management and Application D...
week2.pptx Internet communication Technology
Felix Ramos_Automation Programmer Analyst_QA
Behavior Driven Development by Example
Waseem Hanif SQE Project.pptx software Quality
3.10.22 Philly Basis Presentation.pptx
TGT#19 - 3 seconds or less - Piotr Liss
Emergent architecture- a casestudy TREDS
Preetham Paulose
Cloud Networking
DevOps CI Automation Continuous Integration
Ad

More from Sigma Software (20)

PPTX
Fast is Best. Using .NET MinimalAPIs
PPTX
"Are you developing or declining? Don't become an IT-dinosaur"
PPTX
Michael Smolin, "Decrypting customer's cultural code"
PPTX
Max Kunytsia, “Why is continuous product discovery better than continuous del...
PPTX
Marcelino Moreno, "Product Management Mindset"
PDF
Andrii Pastushok, "Product Discovery in Outsourcing - What, When, and How"
PPTX
Elena Turkenych “BA vs PM: Who' the right person, for the right job, with the...
PPTX
Eleonora Budanova “BA+PM+DEV team: how to build the synergy”
PPTX
Stoyan Atanasov “How crucial is the BA role in an IT Project"
PPTX
Olexandra Kovalyova, "Equivalence Partitioning, Boundary Values ​​Analysis, C...
PPTX
Yana Lysa — "Decision Tables, State-Transition testing, Pairwase Testing"
PPTX
VOLVO x HACK SPRINT
PPTX
Business digitalization trends and challenges
PPTX
Дмитро Терещенко, "How to secure your application with Secure SDLC"
PPTX
Яна Лиса, “Ефективні методи написання хороших мануальних тестових сценаріїв”
PDF
Тетяна Осетрова, “Модель зрілості розподіленної проектної команди”
PDF
Training solutions and content creation
PDF
False news - false truth: tips & tricks how to avoid them
PPTX
Анна Бойко, "Хороший контракт vs очікування клієнтів. Що вбереже вас, якщо вд...
PPTX
Дмитрий Лапшин, "The importance of TEX and Internal Quality. How explain and ...
Fast is Best. Using .NET MinimalAPIs
"Are you developing or declining? Don't become an IT-dinosaur"
Michael Smolin, "Decrypting customer's cultural code"
Max Kunytsia, “Why is continuous product discovery better than continuous del...
Marcelino Moreno, "Product Management Mindset"
Andrii Pastushok, "Product Discovery in Outsourcing - What, When, and How"
Elena Turkenych “BA vs PM: Who' the right person, for the right job, with the...
Eleonora Budanova “BA+PM+DEV team: how to build the synergy”
Stoyan Atanasov “How crucial is the BA role in an IT Project"
Olexandra Kovalyova, "Equivalence Partitioning, Boundary Values ​​Analysis, C...
Yana Lysa — "Decision Tables, State-Transition testing, Pairwase Testing"
VOLVO x HACK SPRINT
Business digitalization trends and challenges
Дмитро Терещенко, "How to secure your application with Secure SDLC"
Яна Лиса, “Ефективні методи написання хороших мануальних тестових сценаріїв”
Тетяна Осетрова, “Модель зрілості розподіленної проектної команди”
Training solutions and content creation
False news - false truth: tips & tricks how to avoid them
Анна Бойко, "Хороший контракт vs очікування клієнтів. Що вбереже вас, якщо вд...
Дмитрий Лапшин, "The importance of TEX and Internal Quality. How explain and ...

Recently uploaded (20)

PPTX
L1 - Introduction to python Backend.pptx
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
medical staffing services at VALiNTRY
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PPTX
Online Work Permit System for Fast Permit Processing
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
Digital Strategies for Manufacturing Companies
PDF
System and Network Administraation Chapter 3
PDF
Nekopoi APK 2025 free lastest update
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPTX
ai tools demonstartion for schools and inter college
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PPTX
Introduction to Artificial Intelligence
L1 - Introduction to python Backend.pptx
How to Choose the Right IT Partner for Your Business in Malaysia
medical staffing services at VALiNTRY
Design an Analysis of Algorithms II-SECS-1021-03
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Online Work Permit System for Fast Permit Processing
VVF-Customer-Presentation2025-Ver1.9.pptx
Digital Strategies for Manufacturing Companies
System and Network Administraation Chapter 3
Nekopoi APK 2025 free lastest update
Navsoft: AI-Powered Business Solutions & Custom Software Development
Odoo Companies in India – Driving Business Transformation.pdf
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
ai tools demonstartion for schools and inter college
Internet Downloader Manager (IDM) Crack 6.42 Build 41
How to Migrate SBCGlobal Email to Yahoo Easily
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Introduction to Artificial Intelligence

BDD/TDD based automation on short-term project on real example, Igor Kokoz

  • 1. BDD/TDD BASED AUTOMATION ON SHORT-TERM PROJECT ON REAL EXAMPLE
  • 3. INITIAL PROJECT INFO  BUSINNES AREA: Provision of services  PRODUCT CATEGORY: Internet resource  TECH STACK:  .Net platform  C#, JavaScript, HTML5  Project duration:  1st phase – 2 Months  2nd phase – 4 Months
  • 4. INITIAL ESTIMATIONS  Regression, localization and cross-browser testing activities: 150 – 180 hours  TA implementation (basing on project backlog):  1st phase – up to 40 hours  2nd phase – up to 130 hours  Expected ROI: 0.8 – 1.2
  • 5. RISKS  NO TIME FOR AUTOMATION TO GET PROFIT:  Only two regression rounds  Cross-browser testing could be limited to 1 round  Number of browsers/devices could be decreased  AUTOMATION COMPLEXITY:  Test flows and scenarios could be changed  UI of the system can be changed  Some flows could be too complex to automate
  • 6. AUTOMATION GOALS (INDIRECT BENEFITS)  Fast feedback on new features  New tests for automated areas/features  No need in manual regression  Continuous quality control  Adding new browsers/devices to test scope will take 1-3 hours
  • 7. PROCESS APPROACHES  Automate acceptance flows  TDD/BDD usage:  Acceptance test flows are defined before start of feature development  Automated tests are implemented in parallel with feature development  Automated tests are executed just after feature delivery to test staging  Passed automated tests are part of DoD for feature development  Same process for new features, bug fixes and CRs  Tests are integrated to CI
  • 8. PROCESS APPROACHES  Tests are executed in CI at least once a day  Test Automation engineer integration to project:  Daily meetings  Involved only for short term automation tasks during sprint  Tasks for each sprint are processed as small fixed price projects  Main TA KPI: time to get test results after feature deliver on staging  Secondary KPI: ROI calculation on each sprint
  • 9. TECH APPROACHES SpecFlow based framework:  Layered structure  Gherkin for top level test logic description (KDD/BDD)  Examples used for DDT  WebDriver for UI interactions Framework
  • 10. FRAMEWORK STRUCTURE FEATURES LAYER STEPS LAYER PAGE OBJECTS LAYER SERVICES LAYER MODELS WEB DRIVER SERVER API Layers
  • 11. FRAMEWORK STRUCTURE  Test cases are written as a user stories describing real user action flow.  Test scenarios written on Gherkin language and using Given, When, Then notation. Features layer Given [Some Context] When [Some Actions is performed] Then [This should be the result]
  • 12. FRAMEWORK STRUCTURE  Test steps represent the level of abstraction between your Page Objects and higher-level stories  Divide test implementation from test logic  DRY Steps layer
  • 13. FRAMEWORK STRUCTURE  PageObject pattern models UI areas as objects within the test code  UI area logic is divided from test implementation logic  DRY  Driver usage is encapsulated Page Objects Layer
  • 14. FRAMEWORK STRUCTURE  HTTP requests as objects within the test code  Requests logic is divided from test implementation logic  DRY  HTTP request usage is encapsulated Services layer
  • 15. TECH APPROACHES  SpecFlow Context Injection  Upside down development:  Start from Features level (steps unimplemented or mocked)  Steps implementation without real PageObject (PO and it’s methods are mocked)  Page object is last one to be implemented with known API  IDE method generation usage Dev practices
  • 18. TA RESULTS  TEST TYPES COVERED:  Acceptance testing  Integration testing  Regression testing  PRODUCT INTERFACE INTERACTED:  Web UI – Test scenario execution, Test data generation  Web API – Test scenario execution  Mobile API – Test scenario execution
  • 19. TA RESULTS QUANTITATIVE INDICATORS:  Total time spent: 95 hours  Time for scenarios implementation: 65 hours  Time for tests support: 17 hours  Framework configuration: 4 hours  Demo, planning: 9 hours  Scenarios implemented: 45 scenarios with 145 different tests  Average time for 1 scenario: 1,3 hour  About 300 test runs on CI server
  • 20. TA RESULTS  ROI:  ROI of phase one: about 1.1  ROI of phase two: about 2  OTHER BENEFITS:  Running tests 24/7  Fast feedback (0,5 – 1 hour after feature was implemented)  Continuity  Speed (run time for all regression tests takes 26 minutes for 145 tests)  Test data generation
  • 21. RESULTS  Successful automation even with occurred risks  Product was successfully delivered to Customer
  • 23. THANKS FOR YOUR ATTENTION! Useful books: