SlideShare a Scribd company logo
1
 Why do we need Automation testing
 Manual to Automation benifits
 Testing Framework and Types
Linear
Modular
Data Driven
Keyword Driven
Page Object
Hybrid
2Company Confidential. For Internal use only.
 Effort and Cost
◦ Lets assume 6 test cases
◦ Effort required to run all 6 manually => 10 min
◦ Effort required to write unit tests for all 6
cases => 10 min
◦ Effort required to run unit tests for all 6 cases
=> < 1 min
◦ Number of testing iterations => 5
◦ Total manual testing time => 50 min
◦ Total unit testing time => 10 min
3
Release Manual Test Auto Test
Manual Test
Cumulative
1 10 10 10
2 10 0 20
3 10 0 30
4 10 0 40
5 10 0 50
Company Confidential. For Internal use only.
4
Test Case Test Steps Test Data
Results
What to Do ? Input
Pass / Fail
HTML / PDF / XML
Where to Do ?
Company Confidential. For Internal use only.
 A testing framework or more specifically a testing automation framework
is an execution environment for automated tests. It is the overall system in
which the tests will be automated.
 It is defined as the set of assumptions, concepts, and practices that
constitute a work platform or support for automated testing.
 The Testing framework is responsible for:
 Defining the format in which to express expectations.
 Creating a mechanism to hook into or drive the application under test
 Executing the tests
 Reporting results
 Properties of a testing framework:
 It is application independent.
 It is easy to expand, maintain and perpetuate.
5Company Confidential. For Internal use only.
6
Testing
Frameworks
Linear
Modular
Data Driven
Keyword
Driven
Page Object
Model
H
y
b
r
i
d
Company Confidential. For Internal use only.
 User Login
‐ L o g i n L i n k . B r o w s e
‐ U s e r N a m e F i e l d . E n t e r Te x t . “ t e s t 1 2 3 ”
‐ P a s s w o r d F i e l d . . E n t e r Te x t . “ t e s t 1 2 3 ”
‐ R e m e m b e r P s w d . C h e c k
‐ L o g i n B u t t o n . C l i c k
‐ C o n f i r m L o g i n
‐ *
‐ *
‐ *
‐ C o n t i n u e . . O p e r a t i o n s
7Company Confidential. For Internal use only.
 To demonstrate the modular framework we use the Gmail program.
 Consider the basic functions of the calculator such as Login, send mail, send
mail with attachment, CC, Bcc.
We create scripts for these functions as follows:
8
‐LoginLink.Browse
‐UserNameField.EnterText. “test123”
‐PasswordField. .EnterText. “test123”
‐RememberPswd.Check
‐LoginButton.Click
‐Confirm Login
‐LoginLink.Browse
‐UserNameField.EnterText. “test123”
‐PasswordField. .EnterText. “test123”
‐RememberPswd.Check
‐LoginButton.Click
‐Confirm Login
‐ComposeButton.Click
‐ToField.EnterEmail. “toEmail123”
‐SubjectField. EnterText “Test Subject 123”
‐BodyField. EnterText “……”
‐SendButton.Click
‐Confirm.EmailSent
‐Logout
 User Login  Send Email
‐VerifyLink.ForgotPwd.isPresent
‐Application can have 100’s & 1000’s of
TestCases all needs to be updated.
Company Confidential. For Internal use only.
 The Modular testing framework is built on the concept of functions or
modules.
 This involves the creation of independent scripts / functions that
represent the modules of the application under test.
 Thus the changes made to the other part of the application do not effect
that component.
9
Pros Cons
Changes require less effort
Reuse this over and over
Accuracy improved
Data is hard coded
Code needs change for change in data
QA Team 20% auto – 80% Manual
Manual engg also should use test
framework.
Company Confidential. For Internal use only.
 To demonstrate the data driven testing framework we use the User login
function again.
 The first step involves creating the test data file. (testdata.csv)
 This data file contains the different types of input data which will be given to
the driver script.
 In the next step we create a driver script and make references to the test
data file.
10
‐Data = openfile(‘testData.csv’).read()
‐line = Data.splitLines()
‐LoginLink.Browse
‐UserNameField.EnterText.{line.useName}
‐PasswordField. .EnterText. {line.userPwd}
‐RememberPswd.Check
‐LoginButton.Click
‐Confirm Login
‐line++ then Loop
 User Login Sl
#
userName userPwd
1 user123@gmail.com Passwd123
2 user999@gmail.com Passwd999
3 test12@mail.com Tshe%237p
4 utest@email.com Ped23%!
5 mahesh@mail.com Uasswd273@
6 januja@inti.com Ka8&29dj
7 user001@gmail.com Passwd001
8 user456@gmail.com Passwd456
Company Confidential. For Internal use only.
11
The driver script contains navigation through the program, reading of the data files
and logging of the test status information.
TC
Script 1
Script 2
Script 3
TD
Data Set1
Data Set2
Data Set n
Excel, XML, DB,….
Pros Cons
Repeat same TC for various TD
Much more faster-efficiency
Sharing load with Manual QA
Changes with TC Requires code change
To add new TC, we have to do a code
change
Company Confidential. For Internal use only.
 Assume your application under test is undergoing very frequent changes
 Need to cover various areas functional, regression, load, stress,
performance …
 More for automation and manual team can be further used
 By this time we separated functions and Data from main Program.
 How about if we separate the test steps and keep it external
12
Test Case Test Steps Test Data Element Identifier
User Login Browse https://.gmail.com address bar
Key in test123 By.ID(“user_Name")
Key in test123 By.name(“password")
Enable checkBox By. class("css selector")
Click loginBtn By. tagName(“LoginBtn”)
Hover homePage By.link("link text")
Company Confidential. For Internal use only.
 Keyword driven testing is an application independent framework utilizing
data tables and self explanatory keywords to explain the actions to be
performed on the application under test.
 Not only is the test data kept in the file but even the directives telling
what to do which is in the test scripts is put in external input data file.
 These directives are called keywords. The keyword based testing is an
extension to the data driven testing.
13
Pros Cons
Change to TC, require no code Change
Add new TC require no code change
Webpage change & element
identification becomes issue
Dynamism in web objects
Company Confidential. For Internal use only.
14
Login.po compose.po
TestCases.file
Company Confidential. For Internal use only.
15
TestCases.file
Login.po
Login.csv Compose.csv
Compose.po
Login to app with username and password
Compose and send email
Logout from application
Confirm logout
Company Confidential. For Internal use only.
 Hybrid testing framework is the combination of modular, data-driven and
keyword driven testing frameworks.
 This combination of frameworks helps the data driven scripts take
advantage of the libraries which usually accompany the keyword driven
testing.
16Company Confidential. For Internal use only.
17Company Confidential. For Internal use only.
18

More Related Content

What's hot

Writing Test Cases in Agile
Writing Test Cases in AgileWriting Test Cases in Agile
Writing Test Cases in Agile
Saroj Singh
 
Understanding Unit Testing
Understanding Unit TestingUnderstanding Unit Testing
Understanding Unit Testing
ikhwanhayat
 
Unit 2 - Test Case Design
Unit 2 - Test Case DesignUnit 2 - Test Case Design
Unit 2 - Test Case Design
Selvi Vts
 
Test case development
Test case developmentTest case development
Test case development
Hrushikesh Wakhle
 
Top ten software testing tools
Top ten software testing toolsTop ten software testing tools
Top ten software testing tools
JanBask Training
 
Automation testing
Automation testingAutomation testing
Automation testing
Biswajit Pratihari
 
Testing methodology
Testing methodologyTesting methodology
Testing methodology
Dina Hanbazazah
 
Best Practices for Test Case Writing
Best Practices for Test Case WritingBest Practices for Test Case Writing
Best Practices for Test Case WritingSarah Goldberg
 
Presentation on Agile Testing
Presentation on Agile TestingPresentation on Agile Testing
Presentation on Agile Testing
1Solutions Pvt. Ltd.
 
Interview Question & Answers for Selenium Freshers | LearningSlot
Interview Question & Answers for Selenium Freshers | LearningSlotInterview Question & Answers for Selenium Freshers | LearningSlot
Interview Question & Answers for Selenium Freshers | LearningSlot
Learning Slot
 
testng
testngtestng
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
Nivetha Padmanaban
 
Interview questions for manual testing technology.
Interview questions for manual testing technology.Interview questions for manual testing technology.
Interview questions for manual testing technology.
Vinay Agnihotri
 
Manual testing interview question by INFOTECH
Manual testing interview question by INFOTECHManual testing interview question by INFOTECH
Manual testing interview question by INFOTECH
Pravinsinh
 
Test case techniques
Test case techniquesTest case techniques
Test case techniques
Pina Parmar
 
Workshop unit test
Workshop   unit testWorkshop   unit test
Workshop unit test
Francesco Garavaglia
 
Info manual testing questions
Info manual testing questionsInfo manual testing questions
Info manual testing questions
Sandeep
 
What is Integration Testing? | Edureka
What is Integration Testing? | EdurekaWhat is Integration Testing? | Edureka
What is Integration Testing? | Edureka
Edureka!
 
Unit Testing Concepts and Best Practices
Unit Testing Concepts and Best PracticesUnit Testing Concepts and Best Practices
Unit Testing Concepts and Best Practices
Derek Smith
 

What's hot (20)

Writing Test Cases in Agile
Writing Test Cases in AgileWriting Test Cases in Agile
Writing Test Cases in Agile
 
Understanding Unit Testing
Understanding Unit TestingUnderstanding Unit Testing
Understanding Unit Testing
 
Unit 2 - Test Case Design
Unit 2 - Test Case DesignUnit 2 - Test Case Design
Unit 2 - Test Case Design
 
Test case development
Test case developmentTest case development
Test case development
 
Top ten software testing tools
Top ten software testing toolsTop ten software testing tools
Top ten software testing tools
 
Automation testing
Automation testingAutomation testing
Automation testing
 
Testing methodology
Testing methodologyTesting methodology
Testing methodology
 
Best Practices for Test Case Writing
Best Practices for Test Case WritingBest Practices for Test Case Writing
Best Practices for Test Case Writing
 
Presentation on Agile Testing
Presentation on Agile TestingPresentation on Agile Testing
Presentation on Agile Testing
 
Interview Question & Answers for Selenium Freshers | LearningSlot
Interview Question & Answers for Selenium Freshers | LearningSlotInterview Question & Answers for Selenium Freshers | LearningSlot
Interview Question & Answers for Selenium Freshers | LearningSlot
 
testng
testngtestng
testng
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
 
Interview questions for manual testing technology.
Interview questions for manual testing technology.Interview questions for manual testing technology.
Interview questions for manual testing technology.
 
Manual testing interview question by INFOTECH
Manual testing interview question by INFOTECHManual testing interview question by INFOTECH
Manual testing interview question by INFOTECH
 
Test case techniques
Test case techniquesTest case techniques
Test case techniques
 
Workshop unit test
Workshop   unit testWorkshop   unit test
Workshop unit test
 
Info manual testing questions
Info manual testing questionsInfo manual testing questions
Info manual testing questions
 
What is Integration Testing? | Edureka
What is Integration Testing? | EdurekaWhat is Integration Testing? | Edureka
What is Integration Testing? | Edureka
 
Black box software testing
Black box software testingBlack box software testing
Black box software testing
 
Unit Testing Concepts and Best Practices
Unit Testing Concepts and Best PracticesUnit Testing Concepts and Best Practices
Unit Testing Concepts and Best Practices
 

Similar to Automation frameworks

Test automation
Test automationTest automation
Test automation
Jitendra Malviya
 
Test Automation Best Practices (with SOA test approach)
Test Automation Best Practices (with SOA test approach)Test Automation Best Practices (with SOA test approach)
Test Automation Best Practices (with SOA test approach)
Leonard Fingerman
 
Keyword Driven Testing
Keyword Driven TestingKeyword Driven Testing
Keyword Driven TestingHarish MS
 
Microsoft az-204 download free demo at dumps cafe
Microsoft az-204 download free demo at dumps cafeMicrosoft az-204 download free demo at dumps cafe
Microsoft az-204 download free demo at dumps cafe
JeannieHeldt
 
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key UpdatesCloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
IRJET Journal
 
Automation testing
Automation testingAutomation testing
Automation testing
Tomy Rhymond
 
Test Automation Frameworks Final
Test Automation Frameworks   FinalTest Automation Frameworks   Final
Test Automation Frameworks Final
Margaret_Dickman
 
Cis407 a ilab 6 web application development devry university
Cis407 a ilab 6 web application development devry universityCis407 a ilab 6 web application development devry university
Cis407 a ilab 6 web application development devry universitylhkslkdh89009
 
Performance testing and j meter
Performance testing and j meterPerformance testing and j meter
Performance testing and j meter
Purna Chandar
 
Testing Software Solutions
Testing Software SolutionsTesting Software Solutions
Testing Software Solutionsgavhays
 
Introduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceIntroduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe Commerce
Bartosz Górski
 
Introduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceIntroduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe Commerce
Bartosz Górski
 
Performance testing using Jmeter for apps which needs authentication
Performance testing using Jmeter for apps which needs authenticationPerformance testing using Jmeter for apps which needs authentication
Performance testing using Jmeter for apps which needs authenticationJay Jha
 
Performancetestingjmeter 121109061704-phpapp02
Performancetestingjmeter 121109061704-phpapp02Performancetestingjmeter 121109061704-phpapp02
Performancetestingjmeter 121109061704-phpapp02
Shivakumara .
 
Mykola Kovsh - Functional API automation with Jmeter
Mykola Kovsh - Functional API automation with JmeterMykola Kovsh - Functional API automation with Jmeter
Mykola Kovsh - Functional API automation with Jmeter
Ievgenii Katsan
 
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands OnjBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
Mauricio (Salaboy) Salatino
 
The Testing Planet Issue 2
The Testing Planet Issue 2The Testing Planet Issue 2
The Testing Planet Issue 2Rosie Sherry
 
Code Camp Applying Modern Software Development Techniques To Ui Testing
Code Camp  Applying Modern Software Development Techniques To Ui TestingCode Camp  Applying Modern Software Development Techniques To Ui Testing
Code Camp Applying Modern Software Development Techniques To Ui TestingChristopherGTaylor
 
SAP Test automation - fully automatic test of complex business processes incl...
SAP Test automation - fully automatic test of complex business processes incl...SAP Test automation - fully automatic test of complex business processes incl...
SAP Test automation - fully automatic test of complex business processes incl...
Tobias Trapp
 
Cypress Best Pratices for Test Automation
Cypress Best Pratices for Test AutomationCypress Best Pratices for Test Automation
Cypress Best Pratices for Test Automation
Knoldus Inc.
 

Similar to Automation frameworks (20)

Test automation
Test automationTest automation
Test automation
 
Test Automation Best Practices (with SOA test approach)
Test Automation Best Practices (with SOA test approach)Test Automation Best Practices (with SOA test approach)
Test Automation Best Practices (with SOA test approach)
 
Keyword Driven Testing
Keyword Driven TestingKeyword Driven Testing
Keyword Driven Testing
 
Microsoft az-204 download free demo at dumps cafe
Microsoft az-204 download free demo at dumps cafeMicrosoft az-204 download free demo at dumps cafe
Microsoft az-204 download free demo at dumps cafe
 
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key UpdatesCloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
 
Automation testing
Automation testingAutomation testing
Automation testing
 
Test Automation Frameworks Final
Test Automation Frameworks   FinalTest Automation Frameworks   Final
Test Automation Frameworks Final
 
Cis407 a ilab 6 web application development devry university
Cis407 a ilab 6 web application development devry universityCis407 a ilab 6 web application development devry university
Cis407 a ilab 6 web application development devry university
 
Performance testing and j meter
Performance testing and j meterPerformance testing and j meter
Performance testing and j meter
 
Testing Software Solutions
Testing Software SolutionsTesting Software Solutions
Testing Software Solutions
 
Introduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceIntroduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe Commerce
 
Introduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceIntroduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe Commerce
 
Performance testing using Jmeter for apps which needs authentication
Performance testing using Jmeter for apps which needs authenticationPerformance testing using Jmeter for apps which needs authentication
Performance testing using Jmeter for apps which needs authentication
 
Performancetestingjmeter 121109061704-phpapp02
Performancetestingjmeter 121109061704-phpapp02Performancetestingjmeter 121109061704-phpapp02
Performancetestingjmeter 121109061704-phpapp02
 
Mykola Kovsh - Functional API automation with Jmeter
Mykola Kovsh - Functional API automation with JmeterMykola Kovsh - Functional API automation with Jmeter
Mykola Kovsh - Functional API automation with Jmeter
 
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands OnjBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
jBPM5 Community Training Module 4: jBPM5 APIs Overview + Hands On
 
The Testing Planet Issue 2
The Testing Planet Issue 2The Testing Planet Issue 2
The Testing Planet Issue 2
 
Code Camp Applying Modern Software Development Techniques To Ui Testing
Code Camp  Applying Modern Software Development Techniques To Ui TestingCode Camp  Applying Modern Software Development Techniques To Ui Testing
Code Camp Applying Modern Software Development Techniques To Ui Testing
 
SAP Test automation - fully automatic test of complex business processes incl...
SAP Test automation - fully automatic test of complex business processes incl...SAP Test automation - fully automatic test of complex business processes incl...
SAP Test automation - fully automatic test of complex business processes incl...
 
Cypress Best Pratices for Test Automation
Cypress Best Pratices for Test AutomationCypress Best Pratices for Test Automation
Cypress Best Pratices for Test Automation
 

More from Vishwanath KC

Introduction to Agile Scrum Methodology
Introduction to Agile Scrum MethodologyIntroduction to Agile Scrum Methodology
Introduction to Agile Scrum Methodology
Vishwanath KC
 
Cucumber With Selenium
Cucumber With SeleniumCucumber With Selenium
Cucumber With Selenium
Vishwanath KC
 
Api Testing
Api TestingApi Testing
Api Testing
Vishwanath KC
 
Api Testing
Api TestingApi Testing
Api Testing
Vishwanath KC
 
Time management
Time managementTime management
Time management
Vishwanath KC
 
Non-functional testing
Non-functional testingNon-functional testing
Non-functional testing
Vishwanath KC
 
Jasmine framework
Jasmine frameworkJasmine framework
Jasmine framework
Vishwanath KC
 

More from Vishwanath KC (7)

Introduction to Agile Scrum Methodology
Introduction to Agile Scrum MethodologyIntroduction to Agile Scrum Methodology
Introduction to Agile Scrum Methodology
 
Cucumber With Selenium
Cucumber With SeleniumCucumber With Selenium
Cucumber With Selenium
 
Api Testing
Api TestingApi Testing
Api Testing
 
Api Testing
Api TestingApi Testing
Api Testing
 
Time management
Time managementTime management
Time management
 
Non-functional testing
Non-functional testingNon-functional testing
Non-functional testing
 
Jasmine framework
Jasmine frameworkJasmine framework
Jasmine framework
 

Recently uploaded

top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Jay Das
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
IES VE
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
kalichargn70th171
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 

Recently uploaded (20)

top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 

Automation frameworks

  • 1. 1
  • 2.  Why do we need Automation testing  Manual to Automation benifits  Testing Framework and Types Linear Modular Data Driven Keyword Driven Page Object Hybrid 2Company Confidential. For Internal use only.
  • 3.  Effort and Cost ◦ Lets assume 6 test cases ◦ Effort required to run all 6 manually => 10 min ◦ Effort required to write unit tests for all 6 cases => 10 min ◦ Effort required to run unit tests for all 6 cases => < 1 min ◦ Number of testing iterations => 5 ◦ Total manual testing time => 50 min ◦ Total unit testing time => 10 min 3 Release Manual Test Auto Test Manual Test Cumulative 1 10 10 10 2 10 0 20 3 10 0 30 4 10 0 40 5 10 0 50 Company Confidential. For Internal use only.
  • 4. 4 Test Case Test Steps Test Data Results What to Do ? Input Pass / Fail HTML / PDF / XML Where to Do ? Company Confidential. For Internal use only.
  • 5.  A testing framework or more specifically a testing automation framework is an execution environment for automated tests. It is the overall system in which the tests will be automated.  It is defined as the set of assumptions, concepts, and practices that constitute a work platform or support for automated testing.  The Testing framework is responsible for:  Defining the format in which to express expectations.  Creating a mechanism to hook into or drive the application under test  Executing the tests  Reporting results  Properties of a testing framework:  It is application independent.  It is easy to expand, maintain and perpetuate. 5Company Confidential. For Internal use only.
  • 7.  User Login ‐ L o g i n L i n k . B r o w s e ‐ U s e r N a m e F i e l d . E n t e r Te x t . “ t e s t 1 2 3 ” ‐ P a s s w o r d F i e l d . . E n t e r Te x t . “ t e s t 1 2 3 ” ‐ R e m e m b e r P s w d . C h e c k ‐ L o g i n B u t t o n . C l i c k ‐ C o n f i r m L o g i n ‐ * ‐ * ‐ * ‐ C o n t i n u e . . O p e r a t i o n s 7Company Confidential. For Internal use only.
  • 8.  To demonstrate the modular framework we use the Gmail program.  Consider the basic functions of the calculator such as Login, send mail, send mail with attachment, CC, Bcc. We create scripts for these functions as follows: 8 ‐LoginLink.Browse ‐UserNameField.EnterText. “test123” ‐PasswordField. .EnterText. “test123” ‐RememberPswd.Check ‐LoginButton.Click ‐Confirm Login ‐LoginLink.Browse ‐UserNameField.EnterText. “test123” ‐PasswordField. .EnterText. “test123” ‐RememberPswd.Check ‐LoginButton.Click ‐Confirm Login ‐ComposeButton.Click ‐ToField.EnterEmail. “toEmail123” ‐SubjectField. EnterText “Test Subject 123” ‐BodyField. EnterText “……” ‐SendButton.Click ‐Confirm.EmailSent ‐Logout  User Login  Send Email ‐VerifyLink.ForgotPwd.isPresent ‐Application can have 100’s & 1000’s of TestCases all needs to be updated. Company Confidential. For Internal use only.
  • 9.  The Modular testing framework is built on the concept of functions or modules.  This involves the creation of independent scripts / functions that represent the modules of the application under test.  Thus the changes made to the other part of the application do not effect that component. 9 Pros Cons Changes require less effort Reuse this over and over Accuracy improved Data is hard coded Code needs change for change in data QA Team 20% auto – 80% Manual Manual engg also should use test framework. Company Confidential. For Internal use only.
  • 10.  To demonstrate the data driven testing framework we use the User login function again.  The first step involves creating the test data file. (testdata.csv)  This data file contains the different types of input data which will be given to the driver script.  In the next step we create a driver script and make references to the test data file. 10 ‐Data = openfile(‘testData.csv’).read() ‐line = Data.splitLines() ‐LoginLink.Browse ‐UserNameField.EnterText.{line.useName} ‐PasswordField. .EnterText. {line.userPwd} ‐RememberPswd.Check ‐LoginButton.Click ‐Confirm Login ‐line++ then Loop  User Login Sl # userName userPwd 1 user123@gmail.com Passwd123 2 user999@gmail.com Passwd999 3 test12@mail.com Tshe%237p 4 utest@email.com Ped23%! 5 mahesh@mail.com Uasswd273@ 6 januja@inti.com Ka8&29dj 7 user001@gmail.com Passwd001 8 user456@gmail.com Passwd456 Company Confidential. For Internal use only.
  • 11. 11 The driver script contains navigation through the program, reading of the data files and logging of the test status information. TC Script 1 Script 2 Script 3 TD Data Set1 Data Set2 Data Set n Excel, XML, DB,…. Pros Cons Repeat same TC for various TD Much more faster-efficiency Sharing load with Manual QA Changes with TC Requires code change To add new TC, we have to do a code change Company Confidential. For Internal use only.
  • 12.  Assume your application under test is undergoing very frequent changes  Need to cover various areas functional, regression, load, stress, performance …  More for automation and manual team can be further used  By this time we separated functions and Data from main Program.  How about if we separate the test steps and keep it external 12 Test Case Test Steps Test Data Element Identifier User Login Browse https://.gmail.com address bar Key in test123 By.ID(“user_Name") Key in test123 By.name(“password") Enable checkBox By. class("css selector") Click loginBtn By. tagName(“LoginBtn”) Hover homePage By.link("link text") Company Confidential. For Internal use only.
  • 13.  Keyword driven testing is an application independent framework utilizing data tables and self explanatory keywords to explain the actions to be performed on the application under test.  Not only is the test data kept in the file but even the directives telling what to do which is in the test scripts is put in external input data file.  These directives are called keywords. The keyword based testing is an extension to the data driven testing. 13 Pros Cons Change to TC, require no code Change Add new TC require no code change Webpage change & element identification becomes issue Dynamism in web objects Company Confidential. For Internal use only.
  • 15. 15 TestCases.file Login.po Login.csv Compose.csv Compose.po Login to app with username and password Compose and send email Logout from application Confirm logout Company Confidential. For Internal use only.
  • 16.  Hybrid testing framework is the combination of modular, data-driven and keyword driven testing frameworks.  This combination of frameworks helps the data driven scripts take advantage of the libraries which usually accompany the keyword driven testing. 16Company Confidential. For Internal use only.
  • 17. 17Company Confidential. For Internal use only.
  • 18. 18