SlideShare a Scribd company logo
1 of 27
Download to read offline
W3
Test Automation
10/15/2014 11:30:00 AM
Why Automation Fails – in
Theory and Practice
Presented by:
Jim Trentadue
Ranorex
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073
888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
Jim Trentadue
Ranorex
Jim Trentadue has more than fifteen years of experience as a coordinator and manager in the
software testing field. Jim’s various roles in testing have focused on test execution, automation,
management, environment management, standards deployment, and test tool implementation.
In the area of offshore testing, he has worked with multiple large firms on developing and
coordinating cohesive relationships. As a speaker, Jim has presented at numerous industry
conferences, chapter meetings, and at the University of South Florida's software testing class,
where he mentors students on the testing industry and discusses trends for establishing future
job searches and continued training.
WhyTestAutomationFails
inTheoryandinPractice
JimTrentadue
Account/SalesManager -Ranorex
jtrentadue@ranorex.com
Wednesday,October 15th,2014
STARWESTConference
Agenda
3
Agenda
• Test Automation Industry recap
• Test Automation Industry outlook
• Adoption challenges withTest Automation; common myths and perceptions
• Why areTest Automation adoptions failing?
• Why areTest Automation implementations failing?
• Correcting theTest Automation approach, concepts and applications
• Session recap
TestAutomation
Industryrecap
5
TestAutomationIndustryrecap
• First Record  Playback tools appeared about 20-25 years ago
• The primary objective was to test desktop applications. Some tools
could test broken URL links, but not dig into the objects
• The tester was required to have scripting or programming knowledge
to make the tests run effectively, even in Record  Playback.
• Below is an evolution ofTest Automation Frameworks:
Record 
Playback
Structured
Testing
(invokes
more
conditions)
Data Driven
Keyword
Driven
Model /
Object
Based
Actions
Based
Hybrid
(combines 2
or more of
the previous
frameworks)
TestAutomation
Industryoutlook
7
TestAutomationIndustryoutlook
• Number of test automation tools have increased to over 25-30, primarily focused
on taking the scripting / programming out of the equation for the manual testers
• Technical complexities have increased considerably to cover the following:
• License models now offer aTest Execution only component, apart from the
license to create and maintain the automated tests and object repository
• Tools have the capability to integrate with various Continuous Integration tools
andTest Management solutions
Adoptionof TestAutomation;
commonmythsandperceptions
9
TestAutomationadoptionchallenges
• New challenges below have slowed the test automation productivity:
• Rapid deployment times to production
• Shifts from aWaterfall SDLC to an Agile methodology
• HowTest-Driven Development impacts when to automate tests
• How component testing such as: Database testing, Data Warehouse testing,
Web-Service testing or Messaging testing impacts what tests to automate
• To ensure success, many organizations have employed a Proof of Concept study
10
Commonmythsandperceptionsforautomation
Test
Automation
can’t be
accomplished!
Significant
increase in
time and
people
required
Existing
testers are not
needed once
automation is
in place
Automation
will serve all
testing needs
for a system
Associates can
absorb test
automation
without
project or
training
impacts
Implementing
test
automation is
a click of a
button
WhyistheTestAutomationadoption
failinginorganizations?
12
CaseStudy1: Strugglingwith(against)Mgmt
Excerpts from an Austrian test engineer / manager and his interactions with management
“It Must Be Good, I’ve Already Advertised It”
Management’s intention was to reduce testing time for the
system test.There was no calculation for our investment,
we had to go with it because manual testing was no longer
needed.The goal was to automate 100 % of all test cases.
“Testers Aren’t Programmers”
My manager hired testers not be to programmers so he
did not have more developers in the department. Once
told that some tools require heavy scripting / coding,
the message was relayed that testers need to do
“Advanced Scripting”, rather than “Programming”
“Automate Bugs”
An idea by one manager was to automate bugs we
received from our customer care center.We were told
to read this bug and automate this exact user action.
Not knowing the exact function, we hard-coded the
user data into our automation.We were automating
bugs for versions that were not in the field anymore.
“Impress the Customers (theWrongWay)”
My boss had the habit of installing the untested beta
versions for presentations of the software in front of the
customer. He would install unstable versions and then call
developers at 5:30am to fix immediately. We introduced
automated smoke tests to ensure good builds.
Experiences of Test Automation – Case Studies of Software Test Automation: Graham & Fewster
13
TestAutomationadoptionquestions
Who
• are the right
people to
create,
maintain test
cases and
object
repository
information?
• may execute
automated
tests instead
creating?
• will be the
dedicated go
to person(s)
for the tool?
What
• is our
organization’s
definition of
automated
testing: what it
is and what it
is not?
• are the test
automation
objectives?
• is the expected
testing
coverage
sought after
with test
automation?
When
• are testing
resources
available for
this initiative?
• can training
happen in
relation to the
procurement?
• are there
project
deadlines that
compete
against test
automation?
Where
• will the test
automation
take place;
dedicated test
environment?
• are the
associates
located?This
will decide
whether a
training should
be remote on
onsite
• will a central
repository
reside?
Why
• start a test
automation
initiative –
what are the
specific issues?
• run a vendor
POC program;
what do we
want from this
assessment?
• start with a
top-down
management
approach?
How
• do our test
automation
objectives
differ from our
overall testing
objectives?
• does manual
testing fit into
a test
automation
framework?
• do existing
tools such as
(CI, CM,TM)
work with the
automation
solution?
Aligned into categories for questions that may not have been answered…or asked
14
TestAutomationadoptionfailures
Reviewing some not so best practices and assumptions around test automation adoption
• ManualTest Cases may not have been written for automation
with entry points, data and exit criteria
• Error handling is not considered as part of manual testing;
separate from defect detection
• Modularity is not a key consideration for manual test case
planning, as it is for test automation
Test
Automation
automates
manual test
cases
• Testers should just go through all of the entire regression test
library and strive to have that all automated
• New application changes should just be added to the automation
library of tests as it is complete
• This full automation run should happen overnight and any
discrepancy should be logged as an application defect
Test
Automation
must cover
100% of the
application
• Replace the time required for manual testing to do automated
testing the first time and each subsequent run will be shorter
• Every manual tester we have can automate their own tests, they
have the testing knowledge to do so
• This does not have to be a separate initiative, there is ample time
during each project release
Testers can
automate
their tests
during a
release
WhyistheTestAutomationimplementation
failinginorganizations?
16
CaseStudy2: ChosingtheWrongTool
Experiences of Test Automation – Case Studies of Software Test Automation: Graham & Fewster
• The goal was to automate the testing of major functionality
for web development tools at a large internet software
development company
Background for the Case
Study
• Most of the functional tests were executed manually.There
were some unmaintained automation scripts that could
potentially serve useful if restored
Pre-existingAutomation
• TheGUI had gone through major changes for the application.
The automation tool had to be flexible enough to automate
the changes and be easy to maintain
NewTool or Major
Maintenance Effort?
• The consensus was that the tool and coding required was
difficult for manual testers to maintain. Additionally, the type
of object recognition provided did not work
Moving Forward with
existing tool?
• Clearly understand how automated tools use objects and
realize that identification by image was not adequate.
Research was done to find the best tool to identify objects
What was done after the
tool was replaced?
• Closely examine the tools that work best with the controls in
your environments.Topics like maintainability and error-
handling/debugging should be critical
Conclusion
17
TestAutomationimplementationfailures
What could go wrong when trying to use the purchased solution
• The application(s) under test uses technologies that do not work
well with the test automation tool
• When I attempt to playback the test I just recorded, the recording
doesn’t playback at all
• I have to use one test automation solution for one technology
(Web), another for Mobile, yet another for legacy desktop apps
The test
automation
tool won’t
work on my
application
• The automated test case(s) needs to be re-recorded in most
times of any GUI changes, causing heavy maintenance
• It’s not worth automating newer applications; automation is
really only for regression testing of legacy applications
• It’s said that automation is key with Agile Development, but
automation can’t work when deployed in increments
Screens &
Objects in
the AUT are
changing;
automate?
• We don’t have time to work with the test automation solution
with overly aggressive project schedules and over-allocation
• TestAutomation software is primarily marketed to testers with a
programming and development skillset / background
• This initiative doesn’t have the cross-department support that it
should to be effective
Automation
tools are too
complex for
manual
testers
Correctingthetestautomationapproach
19
TestAutomationadoptioncorrections
Changing the mindset concerning test automation
• AutomatedTest Cases are separate from manual test cases with
entry points, data and exit criteria
• Error handling is an essential part of automated test cases;
separate from defect detection
• Modularity is the approach on how automated test cases are
developed, to ensure reusability for each automated test step
Test
Automation
automates
manual test
cases
• Testers start automation with a regression test library, but focus
on tests that are time-consuming and have a high ROI
• Applications changes need to be planned for in a MasterTest Plan
and automated during a maintenance window
• Any automation failure needs to be analyzed whether the defect
is in the automated test case or the system under test
Test
Automation
must cover
100% of the
application
• The initial cycle of creating and executing automated tests will be
longer than manual tests, with each cycle runtime reduced
• Manual testers will require training on the test automation tool,
approach and best practices
• Test automation should be a separate initiative, defined with its
own goals and objectives - apart from an application release
Testers can
automate
their tests
during a
release
Test
Automation
objectives
aim for the
highest ROI
Test Plan
includes
automated
and manual
test cases
Separate
goals &
timelines for
Test
Automation
20
CaseStudy3:DevelopaMutli-SolutionStrategy
• A leading electronic design automation company had a
family of products that was comprised of over 120
programs.This was GUI-based and ported to all leading
industry workstation hardware platforms
Background for the
Case Study
Current Testing Activities
• Three distinct test phases:
Evaluation (done by end-user),
Integration and System
• Integration and System was
done manually and consumed
38 person-weeks of effort for
every software release on every
platform
Proposed Solution
• Evaluate and decide between
purchasing a solution or
building in-house
• Hire an outside consultant to
validate the tool selection prior
to purchase, then train testing
staff on selected tool
• An in-house solution was built
Integration
test
automation
•Completed automation in
just under a year
•First trial: 2-person weeks
manual; automated: 1-
person week – but not
everything could be
automated
•Without automation,
manual: 10 person-weeks
on every platform;
automate: 3 person-weeks
System test
automation
•Automate in two phases:
breadth and depth
•Manual testing took 8
person-weeks per
platform; automation took
4 person-weeks
•Total tests automated was
approximately 79%
-Test effort per platform cut in half
- Consistent regression testing
- Less dependent on application SME’s
- Better use of testing resources
Key Benefits
SoftwareTest Automation: Effective use of test execution tools – Fewster & Graham
21
TestAutomationimplementationcorrections
• Develop a set of criteria that matches your portfolio of
applications to automate and request the vendors for a POC
• Start to request the object names from development as they turn
over new builds.Very important for test automation
• Investigate software packages that contain everything in one;
vendor management and procurement will thank you!
The test
automation
tool won’t
work on my
application
• Find a tool that you don’t have to re-record. If a new control was
added, you wouldn’t rewrite your manual test case
• Consider starting your testing with automated tests to start.
The chances of these tests staying current is much higher
• Test automation should be a key element in sprint planning; for
new functionality and existing maintenance
Screens &
Objects in
the AUT are
changing;
automate?
• Schedule a just-in-time training session with the tool shortly after
procurement, with staff not allocated to a critical project
• Layout the resource plan on how every tester contributes.
Plenty of roles are needed for this initiative than just coding
• Testing management should work with the IT leaders to discuss
the time required from a PM, BA, Dev and DBA
Automation
tools are too
complex for
manual
testers
Develop a
resource
plan for all
required
associates
Understand
the object
landscape
and prepare
the test plan
Successful
POC will
prove the
tools works
on all apps
Changing the approach to putting test automation into practice
22
CaseStudy4:AutomatingGovernmentSystems
• The goal was to speed up the Department of Defense
(DoD), software delivery to the field. It was leading-edge
technology, but lengthy testing and certification
processes were in place before software could be released
Background for the
Case Study
Experiences of Test Automation – Case Studies of Software Test Automation: Graham & Fewster
•The tool has to be independent of the System Under Test; no modules should be added
Can’t Be Intrusive to System UnderTest (SUT)
•The solution(s), had to go across Windows, Linux, Solaris, Mac, etc.
Must Be OS Independent
•The tool needed to support all languages that the applications were written in
Must Be Independent of the GUI
•The system should be able to handle operations through the GUI and backend processes
Must AutomateTests for Both Display & Non-Display Interfaces
•The tool needs to test a system of systems: multiple servers, monitors and displays
interconnected to form one SUT
MustWork in a Networked Multicomputer Environment
•One of the main requirements from the DoD. Testers were SME’s in the application, but not
software developers writing scripts.
•The steps should be action driven: Projects – Test Cases – Test Steps - Actions
Non-Developers Should Be Able to Use theTool
•Needed a framework that could allow for test management activities, including documenting a
test case in the Automated Test and Re-Test (ATRT) solution, along with a hierarchical
breakdown of test cases into test steps and sub-steps
Must Support an Automated RequirementsTraceability Matrix
 Solutions selected
spanned across
technologies
 Reduced some test cycles
from 5 testers to 1
 After initial resistance,
testing department now
worked on automated
test cases, both
development and
execution
 Additional processes for
Continuous Integration
andTest Management
were now enabled
Test Automation ROI
SessionRecap
24
Recapofthepresentation
Reviewing the main points of the presentation
• TheTest Automation industry focused on desktop, but is driving to multi-
technology stacks to cover a large amount of platforms
• Primary skillset for those working in test automation was Programming or
Scripting, but solutions are available for those without these skills
• Common perceptions and myths will exist, review the list of questions to be
asked and use that to drive your strategy
• Present some of the real-life case studies forward to management, to ensure
this does not occur during your research and implementation
• Review some common failures in the theory and implementation and compare
if any of those are problematic at your organization
• Make the corrective action for each failure step accordingly. Incorporate test
automation as part of your overall test strategy
Thankyouforattending!
JimTrentadue
Account/SalesManager -Ranorex
jtrentadue@ranorex.com
Wednesday,October 1st2014
SoftwareQualityandTestManagementConference

More Related Content

What's hot

How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy
Impetus Technologies
 
Basics of Software Testing
Basics of Software TestingBasics of Software Testing
Basics of Software Testing
Shakal Shukla
 
Automated software testing
Automated software testingAutomated software testing
Automated software testing
gauravpanwar8
 
ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0
Samer Desouky
 

What's hot (20)

Successful Test Automation: A Manager’s View
Successful Test Automation: A Manager’s ViewSuccessful Test Automation: A Manager’s View
Successful Test Automation: A Manager’s View
 
Testing concept definition
Testing concept definitionTesting concept definition
Testing concept definition
 
Top Chrome Extensions for Software Testing
Top Chrome Extensions for Software TestingTop Chrome Extensions for Software Testing
Top Chrome Extensions for Software Testing
 
Management Issues in Test Automation
Management Issues in Test AutomationManagement Issues in Test Automation
Management Issues in Test Automation
 
Istqb intro with question answer for exam preparation
Istqb intro with question answer for exam preparationIstqb intro with question answer for exam preparation
Istqb intro with question answer for exam preparation
 
38475471 qa-and-software-testing-interview-questions-and-answers
38475471 qa-and-software-testing-interview-questions-and-answers38475471 qa-and-software-testing-interview-questions-and-answers
38475471 qa-and-software-testing-interview-questions-and-answers
 
Basics in software testing
Basics in software testingBasics in software testing
Basics in software testing
 
Pairwise testing
Pairwise testingPairwise testing
Pairwise testing
 
Fundamentals of testing 1
Fundamentals of testing 1Fundamentals of testing 1
Fundamentals of testing 1
 
Manual testing ppt
Manual testing pptManual testing ppt
Manual testing ppt
 
How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy
 
Are Your Continuous Tests Too Fragile for Agile?
Are Your Continuous Tests Too Fragile for Agile?Are Your Continuous Tests Too Fragile for Agile?
Are Your Continuous Tests Too Fragile for Agile?
 
Test Case Prioritization Techniques
Test Case Prioritization TechniquesTest Case Prioritization Techniques
Test Case Prioritization Techniques
 
Basics of Software Testing
Basics of Software TestingBasics of Software Testing
Basics of Software Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Automated software testing
Automated software testingAutomated software testing
Automated software testing
 
ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0
 
Testing a GPS application | Testbytes
Testing a GPS application | TestbytesTesting a GPS application | Testbytes
Testing a GPS application | Testbytes
 
Software testing interview Q&A – Part 2
Software testing interview Q&A – Part 2Software testing interview Q&A – Part 2
Software testing interview Q&A – Part 2
 
ISTQB Foundation and Selenium Java Automation Testing
ISTQB Foundation and Selenium Java Automation TestingISTQB Foundation and Selenium Java Automation Testing
ISTQB Foundation and Selenium Java Automation Testing
 

Similar to Why Automation Fails—in Theory and Practice

Similar to Why Automation Fails—in Theory and Practice (20)

Why Test Automation Fails
Why Test Automation FailsWhy Test Automation Fails
Why Test Automation Fails
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
Top 5 pitfalls of software test automatiion
Top 5 pitfalls of software test automatiionTop 5 pitfalls of software test automatiion
Top 5 pitfalls of software test automatiion
 
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbsModule 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
 
A Comparative Guide to Automation and Manual Testing.pdf
A Comparative Guide to Automation and Manual Testing.pdfA Comparative Guide to Automation and Manual Testing.pdf
A Comparative Guide to Automation and Manual Testing.pdf
 
Need for automation testing
Need for automation testingNeed for automation testing
Need for automation testing
 
Unit 5 st ppt
Unit 5 st pptUnit 5 st ppt
Unit 5 st ppt
 
7 Ways to Improve Test Automation
7 Ways to Improve Test Automation7 Ways to Improve Test Automation
7 Ways to Improve Test Automation
 
Automation Concepts
Automation ConceptsAutomation Concepts
Automation Concepts
 
Best Practises In Test Automation
Best Practises In Test AutomationBest Practises In Test Automation
Best Practises In Test Automation
 
Best practices for test automation
Best practices for test automationBest practices for test automation
Best practices for test automation
 
Improving ROI with Scriptless Test Automation
Improving ROI with Scriptless Test AutomationImproving ROI with Scriptless Test Automation
Improving ROI with Scriptless Test Automation
 
Why and When to Use Automation in Software Testing
Why and When to Use Automation in Software TestingWhy and When to Use Automation in Software Testing
Why and When to Use Automation in Software Testing
 
Thomas Haver - Mobile Testing.pdf
Thomas Haver - Mobile Testing.pdfThomas Haver - Mobile Testing.pdf
Thomas Haver - Mobile Testing.pdf
 
How to build confidence in your release cycle
How to build confidence in your release cycleHow to build confidence in your release cycle
How to build confidence in your release cycle
 
Automated vs manual testing
Automated vs manual testingAutomated vs manual testing
Automated vs manual testing
 
M. Holovaty, Концепции автоматизированного тестирования
M. Holovaty, Концепции автоматизированного тестированияM. Holovaty, Концепции автоматизированного тестирования
M. Holovaty, Концепции автоматизированного тестирования
 
Software Testing: History, Trends, Perspectives - a Brief Overview
Software Testing: History, Trends, Perspectives - a Brief OverviewSoftware Testing: History, Trends, Perspectives - a Brief Overview
Software Testing: History, Trends, Perspectives - a Brief Overview
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 

More from TechWell

More from TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
 
Ma 15
Ma 15Ma 15
Ma 15
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Why Automation Fails—in Theory and Practice

  • 1. W3 Test Automation 10/15/2014 11:30:00 AM Why Automation Fails – in Theory and Practice Presented by: Jim Trentadue Ranorex Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
  • 2. Jim Trentadue Ranorex Jim Trentadue has more than fifteen years of experience as a coordinator and manager in the software testing field. Jim’s various roles in testing have focused on test execution, automation, management, environment management, standards deployment, and test tool implementation. In the area of offshore testing, he has worked with multiple large firms on developing and coordinating cohesive relationships. As a speaker, Jim has presented at numerous industry conferences, chapter meetings, and at the University of South Florida's software testing class, where he mentors students on the testing industry and discusses trends for establishing future job searches and continued training.
  • 5. 3 Agenda • Test Automation Industry recap • Test Automation Industry outlook • Adoption challenges withTest Automation; common myths and perceptions • Why areTest Automation adoptions failing? • Why areTest Automation implementations failing? • Correcting theTest Automation approach, concepts and applications • Session recap
  • 7. 5 TestAutomationIndustryrecap • First Record Playback tools appeared about 20-25 years ago • The primary objective was to test desktop applications. Some tools could test broken URL links, but not dig into the objects • The tester was required to have scripting or programming knowledge to make the tests run effectively, even in Record Playback. • Below is an evolution ofTest Automation Frameworks: Record Playback Structured Testing (invokes more conditions) Data Driven Keyword Driven Model / Object Based Actions Based Hybrid (combines 2 or more of the previous frameworks)
  • 9. 7 TestAutomationIndustryoutlook • Number of test automation tools have increased to over 25-30, primarily focused on taking the scripting / programming out of the equation for the manual testers • Technical complexities have increased considerably to cover the following: • License models now offer aTest Execution only component, apart from the license to create and maintain the automated tests and object repository • Tools have the capability to integrate with various Continuous Integration tools andTest Management solutions
  • 11. 9 TestAutomationadoptionchallenges • New challenges below have slowed the test automation productivity: • Rapid deployment times to production • Shifts from aWaterfall SDLC to an Agile methodology • HowTest-Driven Development impacts when to automate tests • How component testing such as: Database testing, Data Warehouse testing, Web-Service testing or Messaging testing impacts what tests to automate • To ensure success, many organizations have employed a Proof of Concept study
  • 12. 10 Commonmythsandperceptionsforautomation Test Automation can’t be accomplished! Significant increase in time and people required Existing testers are not needed once automation is in place Automation will serve all testing needs for a system Associates can absorb test automation without project or training impacts Implementing test automation is a click of a button
  • 14. 12 CaseStudy1: Strugglingwith(against)Mgmt Excerpts from an Austrian test engineer / manager and his interactions with management “It Must Be Good, I’ve Already Advertised It” Management’s intention was to reduce testing time for the system test.There was no calculation for our investment, we had to go with it because manual testing was no longer needed.The goal was to automate 100 % of all test cases. “Testers Aren’t Programmers” My manager hired testers not be to programmers so he did not have more developers in the department. Once told that some tools require heavy scripting / coding, the message was relayed that testers need to do “Advanced Scripting”, rather than “Programming” “Automate Bugs” An idea by one manager was to automate bugs we received from our customer care center.We were told to read this bug and automate this exact user action. Not knowing the exact function, we hard-coded the user data into our automation.We were automating bugs for versions that were not in the field anymore. “Impress the Customers (theWrongWay)” My boss had the habit of installing the untested beta versions for presentations of the software in front of the customer. He would install unstable versions and then call developers at 5:30am to fix immediately. We introduced automated smoke tests to ensure good builds. Experiences of Test Automation – Case Studies of Software Test Automation: Graham & Fewster
  • 15. 13 TestAutomationadoptionquestions Who • are the right people to create, maintain test cases and object repository information? • may execute automated tests instead creating? • will be the dedicated go to person(s) for the tool? What • is our organization’s definition of automated testing: what it is and what it is not? • are the test automation objectives? • is the expected testing coverage sought after with test automation? When • are testing resources available for this initiative? • can training happen in relation to the procurement? • are there project deadlines that compete against test automation? Where • will the test automation take place; dedicated test environment? • are the associates located?This will decide whether a training should be remote on onsite • will a central repository reside? Why • start a test automation initiative – what are the specific issues? • run a vendor POC program; what do we want from this assessment? • start with a top-down management approach? How • do our test automation objectives differ from our overall testing objectives? • does manual testing fit into a test automation framework? • do existing tools such as (CI, CM,TM) work with the automation solution? Aligned into categories for questions that may not have been answered…or asked
  • 16. 14 TestAutomationadoptionfailures Reviewing some not so best practices and assumptions around test automation adoption • ManualTest Cases may not have been written for automation with entry points, data and exit criteria • Error handling is not considered as part of manual testing; separate from defect detection • Modularity is not a key consideration for manual test case planning, as it is for test automation Test Automation automates manual test cases • Testers should just go through all of the entire regression test library and strive to have that all automated • New application changes should just be added to the automation library of tests as it is complete • This full automation run should happen overnight and any discrepancy should be logged as an application defect Test Automation must cover 100% of the application • Replace the time required for manual testing to do automated testing the first time and each subsequent run will be shorter • Every manual tester we have can automate their own tests, they have the testing knowledge to do so • This does not have to be a separate initiative, there is ample time during each project release Testers can automate their tests during a release
  • 18. 16 CaseStudy2: ChosingtheWrongTool Experiences of Test Automation – Case Studies of Software Test Automation: Graham & Fewster • The goal was to automate the testing of major functionality for web development tools at a large internet software development company Background for the Case Study • Most of the functional tests were executed manually.There were some unmaintained automation scripts that could potentially serve useful if restored Pre-existingAutomation • TheGUI had gone through major changes for the application. The automation tool had to be flexible enough to automate the changes and be easy to maintain NewTool or Major Maintenance Effort? • The consensus was that the tool and coding required was difficult for manual testers to maintain. Additionally, the type of object recognition provided did not work Moving Forward with existing tool? • Clearly understand how automated tools use objects and realize that identification by image was not adequate. Research was done to find the best tool to identify objects What was done after the tool was replaced? • Closely examine the tools that work best with the controls in your environments.Topics like maintainability and error- handling/debugging should be critical Conclusion
  • 19. 17 TestAutomationimplementationfailures What could go wrong when trying to use the purchased solution • The application(s) under test uses technologies that do not work well with the test automation tool • When I attempt to playback the test I just recorded, the recording doesn’t playback at all • I have to use one test automation solution for one technology (Web), another for Mobile, yet another for legacy desktop apps The test automation tool won’t work on my application • The automated test case(s) needs to be re-recorded in most times of any GUI changes, causing heavy maintenance • It’s not worth automating newer applications; automation is really only for regression testing of legacy applications • It’s said that automation is key with Agile Development, but automation can’t work when deployed in increments Screens & Objects in the AUT are changing; automate? • We don’t have time to work with the test automation solution with overly aggressive project schedules and over-allocation • TestAutomation software is primarily marketed to testers with a programming and development skillset / background • This initiative doesn’t have the cross-department support that it should to be effective Automation tools are too complex for manual testers
  • 21. 19 TestAutomationadoptioncorrections Changing the mindset concerning test automation • AutomatedTest Cases are separate from manual test cases with entry points, data and exit criteria • Error handling is an essential part of automated test cases; separate from defect detection • Modularity is the approach on how automated test cases are developed, to ensure reusability for each automated test step Test Automation automates manual test cases • Testers start automation with a regression test library, but focus on tests that are time-consuming and have a high ROI • Applications changes need to be planned for in a MasterTest Plan and automated during a maintenance window • Any automation failure needs to be analyzed whether the defect is in the automated test case or the system under test Test Automation must cover 100% of the application • The initial cycle of creating and executing automated tests will be longer than manual tests, with each cycle runtime reduced • Manual testers will require training on the test automation tool, approach and best practices • Test automation should be a separate initiative, defined with its own goals and objectives - apart from an application release Testers can automate their tests during a release Test Automation objectives aim for the highest ROI Test Plan includes automated and manual test cases Separate goals & timelines for Test Automation
  • 22. 20 CaseStudy3:DevelopaMutli-SolutionStrategy • A leading electronic design automation company had a family of products that was comprised of over 120 programs.This was GUI-based and ported to all leading industry workstation hardware platforms Background for the Case Study Current Testing Activities • Three distinct test phases: Evaluation (done by end-user), Integration and System • Integration and System was done manually and consumed 38 person-weeks of effort for every software release on every platform Proposed Solution • Evaluate and decide between purchasing a solution or building in-house • Hire an outside consultant to validate the tool selection prior to purchase, then train testing staff on selected tool • An in-house solution was built Integration test automation •Completed automation in just under a year •First trial: 2-person weeks manual; automated: 1- person week – but not everything could be automated •Without automation, manual: 10 person-weeks on every platform; automate: 3 person-weeks System test automation •Automate in two phases: breadth and depth •Manual testing took 8 person-weeks per platform; automation took 4 person-weeks •Total tests automated was approximately 79% -Test effort per platform cut in half - Consistent regression testing - Less dependent on application SME’s - Better use of testing resources Key Benefits SoftwareTest Automation: Effective use of test execution tools – Fewster & Graham
  • 23. 21 TestAutomationimplementationcorrections • Develop a set of criteria that matches your portfolio of applications to automate and request the vendors for a POC • Start to request the object names from development as they turn over new builds.Very important for test automation • Investigate software packages that contain everything in one; vendor management and procurement will thank you! The test automation tool won’t work on my application • Find a tool that you don’t have to re-record. If a new control was added, you wouldn’t rewrite your manual test case • Consider starting your testing with automated tests to start. The chances of these tests staying current is much higher • Test automation should be a key element in sprint planning; for new functionality and existing maintenance Screens & Objects in the AUT are changing; automate? • Schedule a just-in-time training session with the tool shortly after procurement, with staff not allocated to a critical project • Layout the resource plan on how every tester contributes. Plenty of roles are needed for this initiative than just coding • Testing management should work with the IT leaders to discuss the time required from a PM, BA, Dev and DBA Automation tools are too complex for manual testers Develop a resource plan for all required associates Understand the object landscape and prepare the test plan Successful POC will prove the tools works on all apps Changing the approach to putting test automation into practice
  • 24. 22 CaseStudy4:AutomatingGovernmentSystems • The goal was to speed up the Department of Defense (DoD), software delivery to the field. It was leading-edge technology, but lengthy testing and certification processes were in place before software could be released Background for the Case Study Experiences of Test Automation – Case Studies of Software Test Automation: Graham & Fewster •The tool has to be independent of the System Under Test; no modules should be added Can’t Be Intrusive to System UnderTest (SUT) •The solution(s), had to go across Windows, Linux, Solaris, Mac, etc. Must Be OS Independent •The tool needed to support all languages that the applications were written in Must Be Independent of the GUI •The system should be able to handle operations through the GUI and backend processes Must AutomateTests for Both Display & Non-Display Interfaces •The tool needs to test a system of systems: multiple servers, monitors and displays interconnected to form one SUT MustWork in a Networked Multicomputer Environment •One of the main requirements from the DoD. Testers were SME’s in the application, but not software developers writing scripts. •The steps should be action driven: Projects – Test Cases – Test Steps - Actions Non-Developers Should Be Able to Use theTool •Needed a framework that could allow for test management activities, including documenting a test case in the Automated Test and Re-Test (ATRT) solution, along with a hierarchical breakdown of test cases into test steps and sub-steps Must Support an Automated RequirementsTraceability Matrix  Solutions selected spanned across technologies  Reduced some test cycles from 5 testers to 1  After initial resistance, testing department now worked on automated test cases, both development and execution  Additional processes for Continuous Integration andTest Management were now enabled Test Automation ROI
  • 26. 24 Recapofthepresentation Reviewing the main points of the presentation • TheTest Automation industry focused on desktop, but is driving to multi- technology stacks to cover a large amount of platforms • Primary skillset for those working in test automation was Programming or Scripting, but solutions are available for those without these skills • Common perceptions and myths will exist, review the list of questions to be asked and use that to drive your strategy • Present some of the real-life case studies forward to management, to ensure this does not occur during your research and implementation • Review some common failures in the theory and implementation and compare if any of those are problematic at your organization • Make the corrective action for each failure step accordingly. Incorporate test automation as part of your overall test strategy