SlideShare a Scribd company logo
Test Automation
What is test automation
Test automation is an activity that aims to test the most frequently used and least frequently
changed parts of an application automatically. This can be done by test automation tools by the help
of programming languages supported. Therefore, related test cases are written as a piece of code.
Thought test automation activity is criticized under testing activity, it is a software development
activity. Every change in the application should be reflected to the test automation scripts so, even
the cleverest test scripts are produced, and maintenance activity comes out as problem of test
automation since the application is a live object.
Test automation has an important role in software quality assurance. Because the needs of
the sector and trend towards to test automation is getting high, there are a large number of test
automation tools exist in the market, but the most famous tools can be listed as follows and more
can be found in the list below :
• QTP: Supported by HP, originally develop by Mercury and imported by HP. It has
many features, easily record and replay, fast and easily development, short learning
curve and powerful support by HP, however for only Windows and costly license
price.
• IBM Rational Robot: Developed by IBM, short learning curve for testing team and
gives options for more sophisticated scripts for test automation engineer, supports
most of the UI platforms, however for only Windows and costly license price.
• Selenium: Open source UI test automation framework, best of the selenium is that
you can write test cases with your favorite language for webpage testing. Although
Selenium is a Firefox plug-in, it can be used for any web browsers. There are lots of
blogs, websites and forum to gather help about new features.
Important points for test automation
Test automation is a live object this means that every change made for the item in the scope
of test automation should affect the test automation scripts. Keeping updated the scripts is crucial.
Therefore, test automation should be started after the test cases are mature and should be apply to
suitable test cases for test automation. This can reduce reworks and unnecessary scripting efforts.
Automation scripts should not cause a fail in the system since the aim of the test is to find
defects in the software in such a case finding the root of a failure is not feasible. Also in such
condition which the automation scripts find a bug or error, it should recover itself then reports the
issue and never stops until the full scripts runs. This can be explain by “transition handling” which
means that test automation is composed of many separate test cases and these test cases run in a
desired/fixed order one by one. Every test case starts then performs its job and then ends then the
following test case does its job but the starting and the end points for all the test cases are the same.
When a failure is catch the test case doesn’t do its job but goes to the end point which is the starting
point of the following test case. This can be illustrated by flower leaf model as shown below:
Another import point is that spending effort for the automation is beneficial or not. The idea
behind the automation is to perform many things on terminals without using human efforts instead
the human can perform test analysts or other test activities. However maintenance effort should be
eliminated because as we said automation is a live object. There should take a statistical study on the
aim of the automation and the gains after a successful automation is applied to the project. This is
named as automation’s return of investment (ROI), a ration of benefits to cost. A mathematical
formula can be written as and more about the calculation of ROI can be found here
http://www.dijohn-ic.com/test_automation_roi.pdf:
ROI should be greater than 100% otherwise test automation is not better than manual test
execution. ROI is calculated for only one execution of the test set but the idea on the automation is
reusing it for every iteration so if you have a frequently release candidate, you have to test your
application before release this means that you should run the automation more than one. If you run
the automation for 3 times effective ROI can be written as:
Graph shows the ROI with execution times:
What are the test automation methodologies
Since an aim to automate everything for every condition is a utopia, focusing on an
applicable automation target should be more realistic. It can be described by SMART which stands
for test automation should be Specific, Measurable, Achievable, Realistic, and Timely. For example,
40% of regression test cases with previously defined 10 users on 3 popular web browsers for an e-
commerce firm could be applicable test automation strategy. After you have decided a strategy, you
can apply a test methodology to practice your test automation. Test methodologies can be described
as follows:
• Record and Replay:
o Records every steps to create a test case
o Easily replay the existing test case
o It doesn’t have loop or if condition or other complicated features
• Functional Test Automation:
o Every test case is automated by a different test scripts
o Test scripts include test data
o No import/export data option
• Data-Driven Test Automation:
o In addition to functional test automation
o Test scripts can run by different data
o Data can be stored/read from an external storage/file
o Only data-sets are updated not the scripts
• Keyword-Driven Test Automation:
o Every case named by a keyword
o The important keywords are sequentially run as a separate test cases
o New test cases can be easily created not need a programming knowledge
o Data and scripts are separately located
o Error handling and Transition handling are difficult
o Creating complex test cases is difficult job
• Hybrid Test Automation:
o Combination of keyword-driven and data-driven automation techniques
o Exception handling and transition handling mechanism can be used
o Desired data can be used for different test cases
o Data and scripts are separately located
Example for keyword-driven testing, important keywords are sequentially run as separate test case
sets. Sample keywords:
open the the webpage named as open;
login the user information named as login;
check the product;
add to basket;
checkout the basket;
logout from the webpage;
close the browser;
Belonging to the keywords above some test case sets may be written as “open + login + logout”,
“open + login + check + logout” and so on.
Mesut Güneş – 22.02.2013
gunesmes@yahoo.com

More Related Content

PPTX
Test automation
PDF
Test Automation
PDF
Test Automation
PPT
Automation With A Tool Demo
PDF
Introduction to Software Test Automation
PPTX
Automation testing
PPTX
Automation Testing
DOCX
Automation Testing Syllabus - Checklist
Test automation
Test Automation
Test Automation
Automation With A Tool Demo
Introduction to Software Test Automation
Automation testing
Automation Testing
Automation Testing Syllabus - Checklist

What's hot (20)

PDF
Test Automation - Keytorc Approach
PPT
Test Management introduction
PPSX
Test Complete
PPT
Test automation process
PPT
Automation testing
PDF
Automation testing introduction for FujiNet
PDF
Cucumber ppt
PPTX
Automated Test Framework with Cucumber
PPTX
Cucumber With Selenium
PPTX
Types of performance testing
PDF
Test Automation Framework Design | www.idexcel.com
DOCX
Selenium Testing Project report
PDF
automation testing benefits
PPT
Automated Testing with Agile
PDF
Test Automation Frameworks Using Selenium | Edureka
PDF
Automated vs manual testing
PPT
Basic software-testing-concepts
PPTX
Chapter 5 - Reviews
PPTX
Automation Testing with Test Complete
PPT
Test Automation Framework Designs
Test Automation - Keytorc Approach
Test Management introduction
Test Complete
Test automation process
Automation testing
Automation testing introduction for FujiNet
Cucumber ppt
Automated Test Framework with Cucumber
Cucumber With Selenium
Types of performance testing
Test Automation Framework Design | www.idexcel.com
Selenium Testing Project report
automation testing benefits
Automated Testing with Agile
Test Automation Frameworks Using Selenium | Edureka
Automated vs manual testing
Basic software-testing-concepts
Chapter 5 - Reviews
Automation Testing with Test Complete
Test Automation Framework Designs
Ad

Similar to Test automation methodologies (20)

PPT
M. Holovaty, Концепции автоматизированного тестирования
PPTX
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
PPTX
Introduction to Automation Testing
PPTX
Introduction to Automation Testing
PPTX
Best practices for test automation
PDF
Improving ROI with Scriptless Test Automation
PDF
Understanding the Basics of Automation Testing.pdf
PPTX
Unit -V 19CS408T - Software Testing Notes
PPT
Automation Concepts
PPT
Automation testing
PDF
Why Automation Fails—in Theory and Practice
PPT
Test Automation Strategies For Agile
PPTX
Why and When to Use Automation in Software Testing
PPTX
How to make Automation an asset for Organization
PPTX
Unit 5 st ppt
PDF
A Complete Guide to Rapid Automation Testing.pdf
PPTX
Automation Best Practices.pptx
PDF
What are the Top Automated Software Testing Tools for 2021
PDF
Mastering QA Automation_ From Strategy to Execution.pdf
PPS
Final Automation Testing
M. Holovaty, Концепции автоматизированного тестирования
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
Introduction to Automation Testing
Introduction to Automation Testing
Best practices for test automation
Improving ROI with Scriptless Test Automation
Understanding the Basics of Automation Testing.pdf
Unit -V 19CS408T - Software Testing Notes
Automation Concepts
Automation testing
Why Automation Fails—in Theory and Practice
Test Automation Strategies For Agile
Why and When to Use Automation in Software Testing
How to make Automation an asset for Organization
Unit 5 st ppt
A Complete Guide to Rapid Automation Testing.pdf
Automation Best Practices.pptx
What are the Top Automated Software Testing Tools for 2021
Mastering QA Automation_ From Strategy to Execution.pdf
Final Automation Testing
Ad

More from Mesut Günes (10)

PDF
CONTINUOUS PERFORMANCE TESTING - ISTSTC (1).pdf
PPTX
Native automation tooling for mobile application testing.pptx
PPTX
Benefits of using native automation tooling for mobile application testing.pptx
PDF
TestOps: What is it and Why we need it
PPTX
Cross Platform Mobile Automation with Calabash on Cloud and More
PPTX
Regular Expression (Regex) Fundamentals
PDF
Exploring the best method of forecasting for short term electrical energy demand
PDF
Test Mühendisliğine Giriş Eğitimi - Bölüm 1
PDF
Test Mühendisliğine Giriş Eğitimi - Bölüm 2
PPTX
Software development life cycle yazılım geliştirme yaşam döngüsü
CONTINUOUS PERFORMANCE TESTING - ISTSTC (1).pdf
Native automation tooling for mobile application testing.pptx
Benefits of using native automation tooling for mobile application testing.pptx
TestOps: What is it and Why we need it
Cross Platform Mobile Automation with Calabash on Cloud and More
Regular Expression (Regex) Fundamentals
Exploring the best method of forecasting for short term electrical energy demand
Test Mühendisliğine Giriş Eğitimi - Bölüm 1
Test Mühendisliğine Giriş Eğitimi - Bölüm 2
Software development life cycle yazılım geliştirme yaşam döngüsü

Recently uploaded (20)

PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Modernizing your data center with Dell and AMD
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Big Data Technologies - Introduction.pptx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Cloud computing and distributed systems.
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
MYSQL Presentation for SQL database connectivity
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Modernizing your data center with Dell and AMD
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
NewMind AI Weekly Chronicles - August'25 Week I
Mobile App Security Testing_ A Comprehensive Guide.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Big Data Technologies - Introduction.pptx
20250228 LYD VKU AI Blended-Learning.pptx
Chapter 3 Spatial Domain Image Processing.pdf
Machine learning based COVID-19 study performance prediction
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Spectral efficient network and resource selection model in 5G networks
Digital-Transformation-Roadmap-for-Companies.pptx
Cloud computing and distributed systems.

Test automation methodologies

  • 1. Test Automation What is test automation Test automation is an activity that aims to test the most frequently used and least frequently changed parts of an application automatically. This can be done by test automation tools by the help of programming languages supported. Therefore, related test cases are written as a piece of code. Thought test automation activity is criticized under testing activity, it is a software development activity. Every change in the application should be reflected to the test automation scripts so, even the cleverest test scripts are produced, and maintenance activity comes out as problem of test automation since the application is a live object. Test automation has an important role in software quality assurance. Because the needs of the sector and trend towards to test automation is getting high, there are a large number of test automation tools exist in the market, but the most famous tools can be listed as follows and more can be found in the list below : • QTP: Supported by HP, originally develop by Mercury and imported by HP. It has many features, easily record and replay, fast and easily development, short learning curve and powerful support by HP, however for only Windows and costly license price. • IBM Rational Robot: Developed by IBM, short learning curve for testing team and gives options for more sophisticated scripts for test automation engineer, supports most of the UI platforms, however for only Windows and costly license price. • Selenium: Open source UI test automation framework, best of the selenium is that you can write test cases with your favorite language for webpage testing. Although Selenium is a Firefox plug-in, it can be used for any web browsers. There are lots of blogs, websites and forum to gather help about new features.
  • 2. Important points for test automation Test automation is a live object this means that every change made for the item in the scope of test automation should affect the test automation scripts. Keeping updated the scripts is crucial. Therefore, test automation should be started after the test cases are mature and should be apply to suitable test cases for test automation. This can reduce reworks and unnecessary scripting efforts. Automation scripts should not cause a fail in the system since the aim of the test is to find defects in the software in such a case finding the root of a failure is not feasible. Also in such condition which the automation scripts find a bug or error, it should recover itself then reports the issue and never stops until the full scripts runs. This can be explain by “transition handling” which means that test automation is composed of many separate test cases and these test cases run in a desired/fixed order one by one. Every test case starts then performs its job and then ends then the following test case does its job but the starting and the end points for all the test cases are the same. When a failure is catch the test case doesn’t do its job but goes to the end point which is the starting point of the following test case. This can be illustrated by flower leaf model as shown below: Another import point is that spending effort for the automation is beneficial or not. The idea behind the automation is to perform many things on terminals without using human efforts instead the human can perform test analysts or other test activities. However maintenance effort should be eliminated because as we said automation is a live object. There should take a statistical study on the aim of the automation and the gains after a successful automation is applied to the project. This is named as automation’s return of investment (ROI), a ration of benefits to cost. A mathematical
  • 3. formula can be written as and more about the calculation of ROI can be found here http://www.dijohn-ic.com/test_automation_roi.pdf: ROI should be greater than 100% otherwise test automation is not better than manual test execution. ROI is calculated for only one execution of the test set but the idea on the automation is reusing it for every iteration so if you have a frequently release candidate, you have to test your application before release this means that you should run the automation more than one. If you run the automation for 3 times effective ROI can be written as: Graph shows the ROI with execution times: What are the test automation methodologies Since an aim to automate everything for every condition is a utopia, focusing on an applicable automation target should be more realistic. It can be described by SMART which stands for test automation should be Specific, Measurable, Achievable, Realistic, and Timely. For example, 40% of regression test cases with previously defined 10 users on 3 popular web browsers for an e- commerce firm could be applicable test automation strategy. After you have decided a strategy, you can apply a test methodology to practice your test automation. Test methodologies can be described as follows: • Record and Replay: o Records every steps to create a test case o Easily replay the existing test case o It doesn’t have loop or if condition or other complicated features • Functional Test Automation:
  • 4. o Every test case is automated by a different test scripts o Test scripts include test data o No import/export data option • Data-Driven Test Automation: o In addition to functional test automation o Test scripts can run by different data o Data can be stored/read from an external storage/file o Only data-sets are updated not the scripts • Keyword-Driven Test Automation: o Every case named by a keyword o The important keywords are sequentially run as a separate test cases o New test cases can be easily created not need a programming knowledge o Data and scripts are separately located o Error handling and Transition handling are difficult o Creating complex test cases is difficult job • Hybrid Test Automation: o Combination of keyword-driven and data-driven automation techniques o Exception handling and transition handling mechanism can be used o Desired data can be used for different test cases o Data and scripts are separately located Example for keyword-driven testing, important keywords are sequentially run as separate test case sets. Sample keywords: open the the webpage named as open; login the user information named as login; check the product; add to basket; checkout the basket; logout from the webpage; close the browser; Belonging to the keywords above some test case sets may be written as “open + login + logout”, “open + login + check + logout” and so on. Mesut Güneş – 22.02.2013 gunesmes@yahoo.com