SlideShare a Scribd company logo
Test Pyramid vs ROI
Anton Semenchenko
Anton Semenchenko
Creator of communities www.COMAQA.BY
and www.CoreHard.by, founder of company
www.DPI.Solutions, «tricky» manager at
EPAM Systems. Almost 15 years of
experience in IT, main specialization:
Automation, С++ and lower development,
management, sales.
Anton Semenchenko
EPAM Systems, Software Testing Manager
Agenda
1. Test Pyramid: general information
2. ROI: general information
3. Two questions
4. Test Pyramid: detailed information
5. Sources of information
6. Two the same questions
7. Solution: high level information
Test Pyramid: definition
• «An effective test automation strategy calls for automating tests at three different
levels, as shown in Figure, which depicts the test automation pyramid»
Test Pyramid with percentage #1
1. UI - 5%
2. Acceptance – 5%
3. Integration – 10%
4. Unit - 80%
Test Pyramid with percentage #2
1. UI – 1%
2. End to End Flow – 4%
3. Workflow API – 6%
4. Integration – 9%
5. Domain Logic Acceptance – 10%
6. Unit – 70%
ROI: general information
Answer three simple questions:
1. How many hours do we spend currently?
2. How many hours will we spend after automation?
3. When automation will bring value?
What information should be gathered?
1. Number of test cases (for estimations)
2. Number of executions per release
3. Effort for manual execution of the test cases
ROI: general information
What should be estimated?
Implementation effort:
1. Effort to create/adopt automation framework
2. Effort to automate test cases
Maintenance effort:
1. Execution of automated scripts
2. Results analysis
3. Bug reporting
4. Fixing “broken” scripts
ROI: calculation
How many hours do we spend currently?
Manual effort per release = Effort for TC execution * number of runs per release
How many hours will we spend after automation?
Effort after automation per release = Maintenance efforts +
Effort for TC execution (non-automatable) * number of runs per release
When automation effort will bring value?
Number of Releases to invest in automation = Automation implementation effort
/ (Manual effort per release - Effort after automation per release)
Two questions (or 4 )
• Percent ??? Time  Money or amount of Test Cases?
• Pyramid  Triangle angels ???
• How to “calculate” 2 pyramids for exact project  context?
• How to “calculate” exact percentage for exact project  context?
Test Pyramid: definition
• «An effective test automation strategy calls for automating tests at three different
levels, as shown in Figure, which depicts the test automation pyramid»
Test Pyramid: Unit Testing
• «Unit testing should be the foundation of a solid test automation strategy and as
such represents the largest part of the pyramid. Automated unit tests are wonderful
because they give specific data to a programmer—there is a bug and it’s on line 47.»
• «Unit tests are usually written in the same language as the system, programmers are
often most comfortable writing them.»
Test Pyramid: Service
• «Although I refer to the middle layer of the test automation pyramid as the service
layer, I am not restricting us to using only a service-oriented architecture. All
applications are made up of various services. In the way I’m using it, a service is
something the application does in response to some input or set of inputs.»
• «Service-level testing is about testing the services of an application separately from its
user interface.»
Test Pyramid: Service - Calculator example
• «What’s needed next is a simple program that can read the rows of this spreadsheet,
pass the data columns to the right service within your application, and verify that the
right results occur. Despite this simplistic example where the result is simple
calculation, the result could be anything—data updated in the database, an e-mail
sent to a specific recipient, money transferred between bank accounts, and so on.»
Test Pyramid: UI
• «Automated user interface testing is placed at the top of the test automation
pyramid because we want to do as little of it as possible.»
• «User interface tests often have the following negative attributes:
• Brittle. A small change in the user interface can break many tests. When this is repeated many
times over the course of a project, teams simply give up and stop correcting tests every time
the user interface changes.
• Expensive to write. A quick capture-and-playback approach to recording user interface tests
can work, but tests recorded this way are usually the most brittle. Writing a good user interface
test that will remain useful and valid takes time.
• Time consuming. Tests run through the user interface often take a long time to run. I’ve seen
numerous teams with impressive suites of automated user interface tests that take so long to
run they cannot be run every night, much less multiple times per day.»
The remaining role of user Interface Tests
• “But don’t we need to do some user interface testing? Absolutely, but far less of it than any
other test type.
• Instead, we run the majority of tests (such as boundary tests) through the service layer,
invoking the methods (services) directly to confirm that the functionality is working properly.
At the user interface level what’s left is testing to confirm that the services are hooked up to
the right buttons and that the values are displaying properly in the result field. To do this we
need a much smaller set of tests to run through the user interface layer.
• Where many organizations have gone wrong in their test automation efforts over the years
has been in ignoring this whole middle layer of service testing. Although automated unit
testing is wonderful, it can cover only so much of an application’s testing needs. Without
service-level testing to fill the gap between unit and user interface testing, all other testing
ends up being performed through the user interface, resulting in tests that are expensive to
run, expensive to write, and brittle”
Automate Within the Sprint
Find a balance 
Sources of information: 2 poles
• “Succeeding with Agile: Software Development Using Scrum” by Mike Cohn
• “Хабрахабр”
• Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем
суть” (#3)
• Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем
суть, SQA Days-15” (#2)
• “Хабрахабр”
• Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем
суть” (#1)
Two the same questions
• Percent ??? Time  Money or amount of Test Cases?
• Pyramid  Triangle angels ???
• How to “calculate” 2 pyramids for exact project  context?
• How to “calculate” exact percentage for exact project  context?
Solution
• Adapt ROI Calculator for you project  context
• Calculate ROI to “build” 2 Test pyramids
ROI Factors?
ROI factors ???
ROI factors
Name Definition Impact
“run” per Release How many times TC should be “run” per Release +
“envs” How many “envs” should be covered +
“updated” per Release How many times TC should be “updated” per Release -
“write” t$ to “write” TC -
“develop” t$ to “develop” TC -
“update” t$ to “update” TC -
“prepare” env t$ to “prepare” env for TC run -
“run” t$ to “run” TC -
“analyze” t$ to “analyze” Test Result -
“locate” t$ to “locate” defect -
“fix” t$ to “fix” defect -
Haven't we forgotten anything?
+1 more factor
Business Needs
Needs 
Examples
• Facebook, Bamboo
• Head hunter
• Microsoft
• Military related software (Data Protection solution for US Army)
Haven't we forgotten anything?
+1 more factor
Business Risks
Risks 
Examples
• A huge set of projects for Siemens
• Data Protection Systems: granular Back-up  Restore plug-ins
• Back-end “oriented” software
Automation tests types #1
1. UI - 5%
2. Acceptance – 5%
3. Integration – 10%
4. Unit - 80%
ROI factors
Name Definition Impact
“run” per Release How many times TC should be “run” per Release +
“envs” How many “envs” should be covered +
“updated” per Release How many times TC should be “updated” per Release -
“write” t$ to “write” TC -
“develop” t$ to “develop” TC -
“update” t$ to “update” TC -
“prepare” env t$ to “prepare” env for TC run -
“run” t$ to “run” TC -
“analyze” t$ to “analyze” Test Result -
“locate” t$ to “locate” defect -
“fix” t$ to “fix” defect -
Testing types “comparative analysis”
Factor Unit Integration Acceptance UI
“run” per Release + +- - -
“envs” - +- + +
“updated” per
Release
- +- -+ -
“write” + +- - -
“develop” + +- - -
“update” + +- - -
“prepare” env + +- - -
“run” + +- +- -
“analyze” + +- -+ -
“locate” + +- - -
“fix” + +- - -
Automation tests types #2
1. UI – 1%
2. End to End Flow – 4%
3. Workflow API – 6%
4. Integration – 9%
5. Domain Logic Acceptance – 10%
6. Unit – 70%
Sources of information: refresh
• “Succeeding with Agile: Software Development Using Scrum” by Mike Cohn
• “Хабрахабр”
• Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем
суть” (#3)
• Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем
суть, SQA Days-15” (#2)
• “Хабрахабр”
• Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем
суть” (#1)
ROI Calculator: refresh
• ISKRA Антон Семенченко «Метрики в тестировании»
• SQA Days 16. Доклад Антона Семенченко о продаже автоматизированного тестирования
• SQA Days 15 Антон Семенченко. Как эффективно организовать Автоматизацию, если у вас недостаточно
времени, ресурсов и денег
• Solit 2014. Антон Семенченко. "Как эффективно продавать Automation Service“
• Solit 2014. Антон Семенченко. "Как эффективно организовать Автоматизацию”
• Антон Семенченко: «Эволюция тестового окружения»
• Антон Семенченко: «Автоматизированное тестирование переживает взрывное развитие»
• Антон Семенченко: «Как автоматизатору не оказаться за бортом эволюции»
• TMPA-2015. Антон Семенченко. Automated testing: yesterday, today, tomorrow – the vectors of
development
• SECR 2016. Антон Семенченко. Метрики в тестировании – практика использования в СНГ
CONTACT ME
semenchenko@dpi.solutions
dpi.semenchenko
https://www.linkedin.com/in/anton-semenchenko-612a926b
https://www.facebook.com/semenchenko.anton.v
https://twitter.com/comaqa
www.COMAQA.BY
Community’s audience
Testing specialists (manual and automated)
Automation tools developers
Managers and sales specialists in IT
IT-specialists, thinking about migrating to automation
Students looking for perspective profession.
Community goals
Create unified space for effective communication for all IT-specialists in the context of automated testing.
Your profit
Ability to listen to reports from leading IT-specialists and share your experience.
Take part in «promo»-versions of top IT-conferences in CIS for free.
Meet regularly, at different forums, community «offices», social networks and messengers.
www.COMAQA.BY
info@comaqa.by
https://www.facebook.com/comaqa.by/
http://vk.com/comaqaby
+375 33 33 46 120
+375 44 74 00 385
www.CoreHard.by
Community’s audience
«Harsh» С++ developers & co, IoT, BigData, High Load, Parallel Computing
Automation tools developers
Managers and sales specialists in IT
Students looking for perspective profession.
Community goals
Create unified space for effective communication for all IT-specialists in the context of «harsh»
development.
Your profit
Ability to listen to reports from leading IT-specialists and share your experience.
Take part in «promo»-versions of top IT-conferences in CIS for free.
Meet regularly, at different forums, community «offices», social networks and messengers.
www.CoreHard.by
info@corehard.by
https://www.facebook.com/corehard.by/
+375 33 33 46 120
+375 44 74 00 385

More Related Content

What's hot

The Automation Firehose: Be Strategic and Tactical by Thomas Haver
The Automation Firehose: Be Strategic and Tactical by Thomas HaverThe Automation Firehose: Be Strategic and Tactical by Thomas Haver
The Automation Firehose: Be Strategic and Tactical by Thomas Haver
QA or the Highway
 
Building an Automation Framework
Building an Automation FrameworkBuilding an Automation Framework
Building an Automation Framework
SmartBear
 
The limits of unit testing by Craig Stuntz
The limits of unit testing by Craig StuntzThe limits of unit testing by Craig Stuntz
The limits of unit testing by Craig Stuntz
QA or the Highway
 
Continuous everything
Continuous everythingContinuous everything
Continuous everything
TEST Huddle
 
Visual Studio 2010 Testing for Developers
Visual Studio 2010 Testing for DevelopersVisual Studio 2010 Testing for Developers
Visual Studio 2010 Testing for Developers
Steve Lange
 
Test Driven iOS Development (TDD)
Test Driven iOS Development (TDD)Test Driven iOS Development (TDD)
Test Driven iOS Development (TDD)
Babul Mirdha
 
A journey to a Full Stack Tester
A journey to a Full Stack Tester A journey to a Full Stack Tester
A journey to a Full Stack Tester
KMS Technology
 
Automated Visual Regression Testing by Dave Sadlon
Automated Visual Regression Testing by Dave SadlonAutomated Visual Regression Testing by Dave Sadlon
Automated Visual Regression Testing by Dave Sadlon
QA or the Highway
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
Archana Krushnan
 
Test automation methodologies
Test automation methodologiesTest automation methodologies
Test automation methodologies
Mesut Günes
 
Eclipse Day India 2015 - Eclipse RCP testing using Jubula based automation
Eclipse Day India 2015 - Eclipse RCP testing using Jubula based automationEclipse Day India 2015 - Eclipse RCP testing using Jubula based automation
Eclipse Day India 2015 - Eclipse RCP testing using Jubula based automation
Eclipse Day India
 
When develpment met test(shift left testing)
When develpment met test(shift left testing)When develpment met test(shift left testing)
When develpment met test(shift left testing)
SangIn Choung
 
Model-based Testing: Taking BDD/ATDD to the Next Level
Model-based Testing: Taking BDD/ATDD to the Next LevelModel-based Testing: Taking BDD/ATDD to the Next Level
Model-based Testing: Taking BDD/ATDD to the Next Level
Bob Binder
 
selenium meetup sf talk march 2014 Selenium at Scale
selenium meetup sf talk march 2014 Selenium at Scaleselenium meetup sf talk march 2014 Selenium at Scale
selenium meetup sf talk march 2014 Selenium at Scale
David Louvton
 
Testing Frameworks
Testing FrameworksTesting Frameworks
Testing Frameworks
Moataz Nabil
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software Testing
Mohammed Moishin
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
Sergey Aganezov
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
Sun Technlogies
 
Sustainable Automation Frameworks by Kelsey Shannahan
Sustainable Automation Frameworks by Kelsey ShannahanSustainable Automation Frameworks by Kelsey Shannahan
Sustainable Automation Frameworks by Kelsey Shannahan
QA or the Highway
 
Enhancing your Test automation Scenario Coverage Using Selenium by Eran Kinsb...
Enhancing your Test automation Scenario Coverage Using Selenium by Eran Kinsb...Enhancing your Test automation Scenario Coverage Using Selenium by Eran Kinsb...
Enhancing your Test automation Scenario Coverage Using Selenium by Eran Kinsb...
QA or the Highway
 

What's hot (20)

The Automation Firehose: Be Strategic and Tactical by Thomas Haver
The Automation Firehose: Be Strategic and Tactical by Thomas HaverThe Automation Firehose: Be Strategic and Tactical by Thomas Haver
The Automation Firehose: Be Strategic and Tactical by Thomas Haver
 
Building an Automation Framework
Building an Automation FrameworkBuilding an Automation Framework
Building an Automation Framework
 
The limits of unit testing by Craig Stuntz
The limits of unit testing by Craig StuntzThe limits of unit testing by Craig Stuntz
The limits of unit testing by Craig Stuntz
 
Continuous everything
Continuous everythingContinuous everything
Continuous everything
 
Visual Studio 2010 Testing for Developers
Visual Studio 2010 Testing for DevelopersVisual Studio 2010 Testing for Developers
Visual Studio 2010 Testing for Developers
 
Test Driven iOS Development (TDD)
Test Driven iOS Development (TDD)Test Driven iOS Development (TDD)
Test Driven iOS Development (TDD)
 
A journey to a Full Stack Tester
A journey to a Full Stack Tester A journey to a Full Stack Tester
A journey to a Full Stack Tester
 
Automated Visual Regression Testing by Dave Sadlon
Automated Visual Regression Testing by Dave SadlonAutomated Visual Regression Testing by Dave Sadlon
Automated Visual Regression Testing by Dave Sadlon
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
Test automation methodologies
Test automation methodologiesTest automation methodologies
Test automation methodologies
 
Eclipse Day India 2015 - Eclipse RCP testing using Jubula based automation
Eclipse Day India 2015 - Eclipse RCP testing using Jubula based automationEclipse Day India 2015 - Eclipse RCP testing using Jubula based automation
Eclipse Day India 2015 - Eclipse RCP testing using Jubula based automation
 
When develpment met test(shift left testing)
When develpment met test(shift left testing)When develpment met test(shift left testing)
When develpment met test(shift left testing)
 
Model-based Testing: Taking BDD/ATDD to the Next Level
Model-based Testing: Taking BDD/ATDD to the Next LevelModel-based Testing: Taking BDD/ATDD to the Next Level
Model-based Testing: Taking BDD/ATDD to the Next Level
 
selenium meetup sf talk march 2014 Selenium at Scale
selenium meetup sf talk march 2014 Selenium at Scaleselenium meetup sf talk march 2014 Selenium at Scale
selenium meetup sf talk march 2014 Selenium at Scale
 
Testing Frameworks
Testing FrameworksTesting Frameworks
Testing Frameworks
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software Testing
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
 
Sustainable Automation Frameworks by Kelsey Shannahan
Sustainable Automation Frameworks by Kelsey ShannahanSustainable Automation Frameworks by Kelsey Shannahan
Sustainable Automation Frameworks by Kelsey Shannahan
 
Enhancing your Test automation Scenario Coverage Using Selenium by Eran Kinsb...
Enhancing your Test automation Scenario Coverage Using Selenium by Eran Kinsb...Enhancing your Test automation Scenario Coverage Using Selenium by Eran Kinsb...
Enhancing your Test automation Scenario Coverage Using Selenium by Eran Kinsb...
 

Similar to Пирамида Тестирования через призму ROI калькулятора и прочая геометрия

Qtp - Introduction values
Qtp - Introduction valuesQtp - Introduction values
Qtp - Introduction values
Vibrant Technologies & Computers
 
Building a Complete Pipeline: The Essential Components of Continuous Testing ...
Building a Complete Pipeline: The Essential Components of Continuous Testing ...Building a Complete Pipeline: The Essential Components of Continuous Testing ...
Building a Complete Pipeline: The Essential Components of Continuous Testing ...
Applitools
 
Top 7 Mistakes in Performance Testing
Top 7 Mistakes in Performance TestingTop 7 Mistakes in Performance Testing
Top 7 Mistakes in Performance Testing
stuartmoncrieff
 
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
Preparing for Enterprise Continuous Delivery - 5 Critical StepsPreparing for Enterprise Continuous Delivery - 5 Critical Steps
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
XebiaLabs
 
Serverless in production, an experience report (London DevOps)
Serverless in production, an experience report (London DevOps)Serverless in production, an experience report (London DevOps)
Serverless in production, an experience report (London DevOps)
Yan Cui
 
Guidelines to Measuring Test Automation ROI
 Guidelines to Measuring Test Automation ROI Guidelines to Measuring Test Automation ROI
Guidelines to Measuring Test Automation ROI
Perfecto by Perforce
 
AWS Lambda from the trenches (Serverless London)
AWS Lambda from the trenches (Serverless London)AWS Lambda from the trenches (Serverless London)
AWS Lambda from the trenches (Serverless London)
Yan Cui
 
Continuous delivery @wcap 5-09-2013
Continuous delivery   @wcap 5-09-2013Continuous delivery   @wcap 5-09-2013
Continuous delivery @wcap 5-09-2013
David Funaro
 
Continuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardContinuous Performance Testing: The New Standard
Continuous Performance Testing: The New Standard
TechWell
 
Code instrumentation
Code instrumentationCode instrumentation
Code instrumentation
Mennan Tekbir
 
When is a project ready for Software Automation_NEW
When is a project ready for Software Automation_NEWWhen is a project ready for Software Automation_NEW
When is a project ready for Software Automation_NEW
Mike Christesen
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
Murageppa-QA
 
Automation testing
Automation testingAutomation testing
Automation testing
Arta Doci
 
Test automation lesson
Test automation lessonTest automation lesson
Test automation lesson
Sadaaki Emura
 
A Declarative Approach for Performance Tests Execution in Continuous Software...
A Declarative Approach for Performance Tests Execution in Continuous Software...A Declarative Approach for Performance Tests Execution in Continuous Software...
A Declarative Approach for Performance Tests Execution in Continuous Software...
Vincenzo Ferme
 
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web TestingThe Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
Perfecto by Perforce
 
Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014
Shelley Lambert
 
Susan windsor soft test 16th november 2005
Susan windsor soft test   16th november 2005Susan windsor soft test   16th november 2005
Susan windsor soft test 16th november 2005
David O'Dowd
 
Serverless in production, an experience report (Going Serverless, 28 Feb 2018)
Serverless in production, an experience report (Going Serverless, 28 Feb 2018)Serverless in production, an experience report (Going Serverless, 28 Feb 2018)
Serverless in production, an experience report (Going Serverless, 28 Feb 2018)
Domas Lasauskas
 
Automated Testing of Web Applications
Automated Testing of Web ApplicationsAutomated Testing of Web Applications
Automated Testing of Web Applications
jonatankronqvist
 

Similar to Пирамида Тестирования через призму ROI калькулятора и прочая геометрия (20)

Qtp - Introduction values
Qtp - Introduction valuesQtp - Introduction values
Qtp - Introduction values
 
Building a Complete Pipeline: The Essential Components of Continuous Testing ...
Building a Complete Pipeline: The Essential Components of Continuous Testing ...Building a Complete Pipeline: The Essential Components of Continuous Testing ...
Building a Complete Pipeline: The Essential Components of Continuous Testing ...
 
Top 7 Mistakes in Performance Testing
Top 7 Mistakes in Performance TestingTop 7 Mistakes in Performance Testing
Top 7 Mistakes in Performance Testing
 
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
Preparing for Enterprise Continuous Delivery - 5 Critical StepsPreparing for Enterprise Continuous Delivery - 5 Critical Steps
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
 
Serverless in production, an experience report (London DevOps)
Serverless in production, an experience report (London DevOps)Serverless in production, an experience report (London DevOps)
Serverless in production, an experience report (London DevOps)
 
Guidelines to Measuring Test Automation ROI
 Guidelines to Measuring Test Automation ROI Guidelines to Measuring Test Automation ROI
Guidelines to Measuring Test Automation ROI
 
AWS Lambda from the trenches (Serverless London)
AWS Lambda from the trenches (Serverless London)AWS Lambda from the trenches (Serverless London)
AWS Lambda from the trenches (Serverless London)
 
Continuous delivery @wcap 5-09-2013
Continuous delivery   @wcap 5-09-2013Continuous delivery   @wcap 5-09-2013
Continuous delivery @wcap 5-09-2013
 
Continuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardContinuous Performance Testing: The New Standard
Continuous Performance Testing: The New Standard
 
Code instrumentation
Code instrumentationCode instrumentation
Code instrumentation
 
When is a project ready for Software Automation_NEW
When is a project ready for Software Automation_NEWWhen is a project ready for Software Automation_NEW
When is a project ready for Software Automation_NEW
 
Automation Tools Overview
Automation Tools OverviewAutomation Tools Overview
Automation Tools Overview
 
Automation testing
Automation testingAutomation testing
Automation testing
 
Test automation lesson
Test automation lessonTest automation lesson
Test automation lesson
 
A Declarative Approach for Performance Tests Execution in Continuous Software...
A Declarative Approach for Performance Tests Execution in Continuous Software...A Declarative Approach for Performance Tests Execution in Continuous Software...
A Declarative Approach for Performance Tests Execution in Continuous Software...
 
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web TestingThe Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
The Automation Firehose: Be Strategic & Tactical With Your Mobile & Web Testing
 
Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014
 
Susan windsor soft test 16th november 2005
Susan windsor soft test   16th november 2005Susan windsor soft test   16th november 2005
Susan windsor soft test 16th november 2005
 
Serverless in production, an experience report (Going Serverless, 28 Feb 2018)
Serverless in production, an experience report (Going Serverless, 28 Feb 2018)Serverless in production, an experience report (Going Serverless, 28 Feb 2018)
Serverless in production, an experience report (Going Serverless, 28 Feb 2018)
 
Automated Testing of Web Applications
Automated Testing of Web ApplicationsAutomated Testing of Web Applications
Automated Testing of Web Applications
 

More from SQALab

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировку
SQALab
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщика
SQALab
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержки
SQALab
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
SQALab
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
SQALab
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
SQALab
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нужен
SQALab
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихии
SQALab
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советов
SQALab
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестов
SQALab
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIs
SQALab
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджменте
SQALab
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
SQALab
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
SQALab
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестирование
SQALab
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"
SQALab
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектов
SQALab
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных систем
SQALab
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопрос
SQALab
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
SQALab
 

More from SQALab (20)

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировку
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщика
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержки
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нужен
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихии
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советов
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестов
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIs
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджменте
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестирование
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектов
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных систем
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопрос
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
 

Recently uploaded

How to deliver Powerpoint Presentations.pptx
How to deliver Powerpoint  Presentations.pptxHow to deliver Powerpoint  Presentations.pptx
How to deliver Powerpoint Presentations.pptx
HajraNaeem15
 
Solutons Maths Escape Room Spatial .pptx
Solutons Maths Escape Room Spatial .pptxSolutons Maths Escape Room Spatial .pptx
Solutons Maths Escape Room Spatial .pptx
spdendr
 
B. Ed Syllabus for babasaheb ambedkar education university.pdf
B. Ed Syllabus for babasaheb ambedkar education university.pdfB. Ed Syllabus for babasaheb ambedkar education university.pdf
B. Ed Syllabus for babasaheb ambedkar education university.pdf
BoudhayanBhattachari
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
adhitya5119
 
Leveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit InnovationLeveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit Innovation
TechSoup
 
How to Create a More Engaging and Human Online Learning Experience
How to Create a More Engaging and Human Online Learning Experience How to Create a More Engaging and Human Online Learning Experience
How to Create a More Engaging and Human Online Learning Experience
Wahiba Chair Training & Consulting
 
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching AptitudeUGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
S. Raj Kumar
 
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
สมใจ จันสุกสี
 
How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17
Celine George
 
math operations ued in python and all used
math operations ued in python and all usedmath operations ued in python and all used
math operations ued in python and all used
ssuser13ffe4
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
Priyankaranawat4
 
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) CurriculumPhilippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
MJDuyan
 
A Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdfA Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdf
Jean Carlos Nunes Paixão
 
Temple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation resultsTemple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation results
Krassimira Luka
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
RAHUL
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
haiqairshad
 
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptxPrésentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
siemaillard
 
Walmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdfWalmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdf
TechSoup
 
Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...
PsychoTech Services
 
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
iammrhaywood
 

Recently uploaded (20)

How to deliver Powerpoint Presentations.pptx
How to deliver Powerpoint  Presentations.pptxHow to deliver Powerpoint  Presentations.pptx
How to deliver Powerpoint Presentations.pptx
 
Solutons Maths Escape Room Spatial .pptx
Solutons Maths Escape Room Spatial .pptxSolutons Maths Escape Room Spatial .pptx
Solutons Maths Escape Room Spatial .pptx
 
B. Ed Syllabus for babasaheb ambedkar education university.pdf
B. Ed Syllabus for babasaheb ambedkar education university.pdfB. Ed Syllabus for babasaheb ambedkar education university.pdf
B. Ed Syllabus for babasaheb ambedkar education university.pdf
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
 
Leveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit InnovationLeveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit Innovation
 
How to Create a More Engaging and Human Online Learning Experience
How to Create a More Engaging and Human Online Learning Experience How to Create a More Engaging and Human Online Learning Experience
How to Create a More Engaging and Human Online Learning Experience
 
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching AptitudeUGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
 
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
 
How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17
 
math operations ued in python and all used
math operations ued in python and all usedmath operations ued in python and all used
math operations ued in python and all used
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
 
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) CurriculumPhilippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
Philippine Edukasyong Pantahanan at Pangkabuhayan (EPP) Curriculum
 
A Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdfA Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdf
 
Temple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation resultsTemple of Asclepius in Thrace. Excavation results
Temple of Asclepius in Thrace. Excavation results
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
 
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptxPrésentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
 
Walmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdfWalmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdf
 
Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...
 
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
 

Пирамида Тестирования через призму ROI калькулятора и прочая геометрия

  • 1. Test Pyramid vs ROI Anton Semenchenko
  • 2. Anton Semenchenko Creator of communities www.COMAQA.BY and www.CoreHard.by, founder of company www.DPI.Solutions, «tricky» manager at EPAM Systems. Almost 15 years of experience in IT, main specialization: Automation, С++ and lower development, management, sales. Anton Semenchenko EPAM Systems, Software Testing Manager
  • 3. Agenda 1. Test Pyramid: general information 2. ROI: general information 3. Two questions 4. Test Pyramid: detailed information 5. Sources of information 6. Two the same questions 7. Solution: high level information
  • 4. Test Pyramid: definition • «An effective test automation strategy calls for automating tests at three different levels, as shown in Figure, which depicts the test automation pyramid»
  • 5. Test Pyramid with percentage #1 1. UI - 5% 2. Acceptance – 5% 3. Integration – 10% 4. Unit - 80%
  • 6. Test Pyramid with percentage #2 1. UI – 1% 2. End to End Flow – 4% 3. Workflow API – 6% 4. Integration – 9% 5. Domain Logic Acceptance – 10% 6. Unit – 70%
  • 7. ROI: general information Answer three simple questions: 1. How many hours do we spend currently? 2. How many hours will we spend after automation? 3. When automation will bring value? What information should be gathered? 1. Number of test cases (for estimations) 2. Number of executions per release 3. Effort for manual execution of the test cases
  • 8. ROI: general information What should be estimated? Implementation effort: 1. Effort to create/adopt automation framework 2. Effort to automate test cases Maintenance effort: 1. Execution of automated scripts 2. Results analysis 3. Bug reporting 4. Fixing “broken” scripts
  • 9. ROI: calculation How many hours do we spend currently? Manual effort per release = Effort for TC execution * number of runs per release How many hours will we spend after automation? Effort after automation per release = Maintenance efforts + Effort for TC execution (non-automatable) * number of runs per release When automation effort will bring value? Number of Releases to invest in automation = Automation implementation effort / (Manual effort per release - Effort after automation per release)
  • 10. Two questions (or 4 ) • Percent ??? Time Money or amount of Test Cases? • Pyramid Triangle angels ??? • How to “calculate” 2 pyramids for exact project context? • How to “calculate” exact percentage for exact project context?
  • 11. Test Pyramid: definition • «An effective test automation strategy calls for automating tests at three different levels, as shown in Figure, which depicts the test automation pyramid»
  • 12. Test Pyramid: Unit Testing • «Unit testing should be the foundation of a solid test automation strategy and as such represents the largest part of the pyramid. Automated unit tests are wonderful because they give specific data to a programmer—there is a bug and it’s on line 47.» • «Unit tests are usually written in the same language as the system, programmers are often most comfortable writing them.»
  • 13. Test Pyramid: Service • «Although I refer to the middle layer of the test automation pyramid as the service layer, I am not restricting us to using only a service-oriented architecture. All applications are made up of various services. In the way I’m using it, a service is something the application does in response to some input or set of inputs.» • «Service-level testing is about testing the services of an application separately from its user interface.»
  • 14. Test Pyramid: Service - Calculator example • «What’s needed next is a simple program that can read the rows of this spreadsheet, pass the data columns to the right service within your application, and verify that the right results occur. Despite this simplistic example where the result is simple calculation, the result could be anything—data updated in the database, an e-mail sent to a specific recipient, money transferred between bank accounts, and so on.»
  • 15. Test Pyramid: UI • «Automated user interface testing is placed at the top of the test automation pyramid because we want to do as little of it as possible.» • «User interface tests often have the following negative attributes: • Brittle. A small change in the user interface can break many tests. When this is repeated many times over the course of a project, teams simply give up and stop correcting tests every time the user interface changes. • Expensive to write. A quick capture-and-playback approach to recording user interface tests can work, but tests recorded this way are usually the most brittle. Writing a good user interface test that will remain useful and valid takes time. • Time consuming. Tests run through the user interface often take a long time to run. I’ve seen numerous teams with impressive suites of automated user interface tests that take so long to run they cannot be run every night, much less multiple times per day.»
  • 16. The remaining role of user Interface Tests • “But don’t we need to do some user interface testing? Absolutely, but far less of it than any other test type. • Instead, we run the majority of tests (such as boundary tests) through the service layer, invoking the methods (services) directly to confirm that the functionality is working properly. At the user interface level what’s left is testing to confirm that the services are hooked up to the right buttons and that the values are displaying properly in the result field. To do this we need a much smaller set of tests to run through the user interface layer. • Where many organizations have gone wrong in their test automation efforts over the years has been in ignoring this whole middle layer of service testing. Although automated unit testing is wonderful, it can cover only so much of an application’s testing needs. Without service-level testing to fill the gap between unit and user interface testing, all other testing ends up being performed through the user interface, resulting in tests that are expensive to run, expensive to write, and brittle”
  • 17. Automate Within the Sprint Find a balance 
  • 18. Sources of information: 2 poles • “Succeeding with Agile: Software Development Using Scrum” by Mike Cohn • “Хабрахабр” • Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем суть” (#3) • Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем суть, SQA Days-15” (#2) • “Хабрахабр” • Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем суть” (#1)
  • 19. Two the same questions • Percent ??? Time Money or amount of Test Cases? • Pyramid Triangle angels ??? • How to “calculate” 2 pyramids for exact project context? • How to “calculate” exact percentage for exact project context?
  • 20. Solution • Adapt ROI Calculator for you project context • Calculate ROI to “build” 2 Test pyramids
  • 22. ROI factors Name Definition Impact “run” per Release How many times TC should be “run” per Release + “envs” How many “envs” should be covered + “updated” per Release How many times TC should be “updated” per Release - “write” t$ to “write” TC - “develop” t$ to “develop” TC - “update” t$ to “update” TC - “prepare” env t$ to “prepare” env for TC run - “run” t$ to “run” TC - “analyze” t$ to “analyze” Test Result - “locate” t$ to “locate” defect - “fix” t$ to “fix” defect -
  • 23. Haven't we forgotten anything? +1 more factor
  • 25. Examples • Facebook, Bamboo • Head hunter • Microsoft • Military related software (Data Protection solution for US Army)
  • 26. Haven't we forgotten anything? +1 more factor
  • 28. Examples • A huge set of projects for Siemens • Data Protection Systems: granular Back-up Restore plug-ins • Back-end “oriented” software
  • 29. Automation tests types #1 1. UI - 5% 2. Acceptance – 5% 3. Integration – 10% 4. Unit - 80%
  • 30. ROI factors Name Definition Impact “run” per Release How many times TC should be “run” per Release + “envs” How many “envs” should be covered + “updated” per Release How many times TC should be “updated” per Release - “write” t$ to “write” TC - “develop” t$ to “develop” TC - “update” t$ to “update” TC - “prepare” env t$ to “prepare” env for TC run - “run” t$ to “run” TC - “analyze” t$ to “analyze” Test Result - “locate” t$ to “locate” defect - “fix” t$ to “fix” defect -
  • 31. Testing types “comparative analysis” Factor Unit Integration Acceptance UI “run” per Release + +- - - “envs” - +- + + “updated” per Release - +- -+ - “write” + +- - - “develop” + +- - - “update” + +- - - “prepare” env + +- - - “run” + +- +- - “analyze” + +- -+ - “locate” + +- - - “fix” + +- - -
  • 32. Automation tests types #2 1. UI – 1% 2. End to End Flow – 4% 3. Workflow API – 6% 4. Integration – 9% 5. Domain Logic Acceptance – 10% 6. Unit – 70%
  • 33. Sources of information: refresh • “Succeeding with Agile: Software Development Using Scrum” by Mike Cohn • “Хабрахабр” • Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем суть” (#3) • Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем суть, SQA Days-15” (#2) • “Хабрахабр” • Игорь Хрол: “Автоматизация тестирования: отбрасываем лишнее и проверяем суть” (#1)
  • 34. ROI Calculator: refresh • ISKRA Антон Семенченко «Метрики в тестировании» • SQA Days 16. Доклад Антона Семенченко о продаже автоматизированного тестирования • SQA Days 15 Антон Семенченко. Как эффективно организовать Автоматизацию, если у вас недостаточно времени, ресурсов и денег • Solit 2014. Антон Семенченко. "Как эффективно продавать Automation Service“ • Solit 2014. Антон Семенченко. "Как эффективно организовать Автоматизацию” • Антон Семенченко: «Эволюция тестового окружения» • Антон Семенченко: «Автоматизированное тестирование переживает взрывное развитие» • Антон Семенченко: «Как автоматизатору не оказаться за бортом эволюции» • TMPA-2015. Антон Семенченко. Automated testing: yesterday, today, tomorrow – the vectors of development • SECR 2016. Антон Семенченко. Метрики в тестировании – практика использования в СНГ
  • 36. www.COMAQA.BY Community’s audience Testing specialists (manual and automated) Automation tools developers Managers and sales specialists in IT IT-specialists, thinking about migrating to automation Students looking for perspective profession. Community goals Create unified space for effective communication for all IT-specialists in the context of automated testing. Your profit Ability to listen to reports from leading IT-specialists and share your experience. Take part in «promo»-versions of top IT-conferences in CIS for free. Meet regularly, at different forums, community «offices», social networks and messengers.
  • 38. www.CoreHard.by Community’s audience «Harsh» С++ developers & co, IoT, BigData, High Load, Parallel Computing Automation tools developers Managers and sales specialists in IT Students looking for perspective profession. Community goals Create unified space for effective communication for all IT-specialists in the context of «harsh» development. Your profit Ability to listen to reports from leading IT-specialists and share your experience. Take part in «promo»-versions of top IT-conferences in CIS for free. Meet regularly, at different forums, community «offices», social networks and messengers.

Editor's Notes

  1. Text should be left aligned / icons should be broken into two columns three and three