SlideShare a Scribd company logo
Test Automation Framework
Overview and Strategy
Presented By
Quontra Solutions
IT Courses Online Training With
Placement Support. Attend Free
Demo
Email: info@quontrasolutions.co.uk
Contact: 20 - 3734 -1498
Web: www.quontrasolutions.co.uk
Contents

Software Framework

The Easy Way

The Better Way
- Introduction
- PageObject Pattern

Automation Framework Approaches
- Data/Table Driven Framework
- Keyword Driven Framework
- Hybrid Framework
- Generic Architecture

Guidelines and Lessons Learnt
- Test Organization
- Test Writing Style
- Browser Updates
2
Software Framework
What is a software framework?
3
Software Framework
The definition and key components
 A software framework is a universal, reusable software platform used to develop
applications, products and solutions.
 Software Frameworks include,
 Support Programs
 Compilers
 Code Libraries
 APIs
 A tool set to integrate different components
4
Software Framework
Framework properties
 A Software framework contain key distinguishing features that separate them from
normal libraries.
 They are,
 Inversion of Control (IOC) the overall program's flow of control is not
dictated by the caller, but by the framework.
 Default behaviour must actually be some useful behavior and not a
series of instructions.
 Extensibility can be extended by the user usually by selective overriding
or specialized by user code providing specific functionality.
 Non modifiable framework code is not allowed to be modified.
5
The Easy Way
What is the easy way to automate?
6
The easy way - Records all user
activities and play back
 Typically a software testing suite will allow the
tester to use the SUT as a user would, through the
browser.
 In the background the testing suite records all of
the clicks and key presses and discards any context.
 Later, the recorded events are played back and
various assertions are made to ensure the output
matches that which is expected.
7
The easy way Pros and Cons
Pros
Easy and does not required highly skilled software developers
Large portions of the application can be covered quickly
Cons
Small changes to the SUT cause massive disruption in the tests
Entire suites of tests can be rendered useless resulting in reduce
testing coverage for extended periods of time
Test maintenance becomes hard
 Tests begin to stagnate
 Team confidence, in the tests, is reduced.
8
The Better Way
What could be a better way of
automating?
9
The better way
Introduction
 Treat automated testing as software development.
 Tests should be created with the same concern for software
design principles such as,
 Reduced coupling
 High cohesion
 Proper separation of concerns
 Maintainability
 Reusability
10
The better way
PageObject class
11
The better way
Dos and Don’ts
 In PageObjects,
 The public methods represent the services that the page offers
 Try not to expose the internals of the page
 Generally don't make assertions
 Methods return other PageObjects
 Need not represent an entire page
 Different results for the same action are modeled as different
methods
12
The better way
Pros and Cons
Pros
 Selenium WebDriver supports
 Increased maintainability
 Increase test stability
 Readable tests
 Tests are easy to author
Cons
 Larger up-front cost for creating PageObjects
 More skill is required to create PageObjects
13
Automation Framework Approaches
What are the available automation
frameworks?
14
Automation FrameworkApproaches
Data/Table Driven Framework
 Data driven is the design of possible inputs what may given by the end user. This would cover maximum
probabilities of an input data. It can be a spread sheet or a DB. We have to connect and pass the values
to the respective field or element.
 Take advantage of tester’s familiarity with test case creation using tables and matrices
 Accommodate localization projects
 Recognize the importance of patterns in test cases
 Enable testers to catalog test cases with Excel spreadsheets
 Enable testers to specify expected results in spreadsheets
15
Automation Framework Approaches
Data/Table Driven Framework
16
Automation FrameworkApproaches
Keyword Driven Framework
 Keyword driven framework is an action based test method used in planning and implementation of
automation.
17
Automation FrameworkApproaches
Hybrid Framework
 A mix of Data driven and Keyword driven frameworks.
18
Automation FrameworkApproaches
Generic Architecture
 A Test Automation Framework should have a multi-tiered
architecture. It should consists of the following tiers.
 Engine Components in this tier are completely
responsible for interacting with the WebDriver
interfaces.
 Domain This tier is meant to contain only page
objects that work against the engine.
 Utils This tier is meant to contain very generic,
reusable functionality across all the other tiers.
 Functional Tests This tier will contain tests that are
built on top of MSTest to create actual test
scenarios by using page objects in the Domain.
19
Test Automation FrameworkTest Automation Framework
(MSTest) Test Execution Engine(MSTest) Test Execution Engine
Functional TestsFunctional Tests
Domain
Engine
UtilsUtils
Selenium Web Driver APISelenium Web Driver API
Guidelines and Lessons Learnt
Some important points to keep in
mind
20
Automation Framework Approaches
Guidelines for Automation framework design
• Selection of a framework
• Don’t reinvent the wheel - Make use of Selenium WebDriver functionalities
• Reusability
• Support of different application versions
• Support of script versioning
• Different environment for development and production
• Externally Configurable
• Minimal changes required for any object changes
• Execution - Individual, batch, only failed etc
• Status monitoring , Reporting
• Minimum dependency on Automation tool for changes
21
Automation Framework
ApproachesGuidelines for Automation
framework design
• Easy debugging
• Logging - Errors, warnings, etc
• Easy to Use
• Flexible - Should not impact existing test if changes are required
• Performance impacts
• Coding Standards
22
Functional test organization
Physical file organization
 Test script files (.cs files) are organized into a
folder structure much similar to the web
application’s page structure.
 Reasons to select this approach:
 Easy access to tests
 Testing a section of the application is easy
23
Functional test organization
Test class naming convention
 Test class name should start with the containing
folder name.
 Reasons to select this approach:
 Easy to group tests based on test class
 Testing a section of the application is easy
24
Functional test writing style Behavior
Driven Development Style Tests
 It is important to be able to break down a test
scenario into the components of a behavior
driven test to ensure clarity. Very concisely the
test writer should be able to dictate a test
scenario as:
 Given <a precondition>
 When <an action takes place>
 Then <expected outcome should be present>
25
Functional test writing style
Behavior Driven Development Style
Tests
26
Functional test writing style
Behavior Driven Development Style Tests
 Reasons for selecting this approach:
 This style of test writing allows for a test case to
be easily verbalized and comparable to the
system requirements being validated.
 Since this effort is heavily focused on UI
automation, it makes sense to capture test cases
dictating every behavior of the system and the
user.
27
Browser Upgrades What if the browser
upgrades automatically?
− Have a portable version of the browser
− Package it with your framework
− Starts when the test suite starts
28
Summary
− Automation should be considered as
a development project and not just
record and playback of events.
Starting automated testing with a
good framework ensures low
maintenance. Guidelines discussed in
this paper can be used as input for
developing requirements for a
framework.
29
Thank You
30

More Related Content

PPSX
Automation Framework 042009 V2
PPT
Designing a Test Automation Framework By Quontra solutions
PPT
Test automation principles, terminologies and implementations
PDF
WSO2Con Asia 2014 - Effective Test Automation in an Agile Environment
PPTX
Test automation framework
PPTX
Selenium Tutorial for Beginners | Automation framework Basics
PDF
Automation Framework Design
PDF
Test Automation Framework Design | www.idexcel.com
Automation Framework 042009 V2
Designing a Test Automation Framework By Quontra solutions
Test automation principles, terminologies and implementations
WSO2Con Asia 2014 - Effective Test Automation in an Agile Environment
Test automation framework
Selenium Tutorial for Beginners | Automation framework Basics
Automation Framework Design
Test Automation Framework Design | www.idexcel.com

What's hot (20)

PPTX
Framework For Automation Testing Practice Sharing
PPT
Test Automation Framework Development Introduction
PPT
Test Automation Framework Designs
PPT
Automation test scripting guidelines
PPTX
Selenium Test Automation
PPT
Automation testing strategy, approach & planning
PPTX
Framework for Web Automation Testing
PPT
Test Automation Best Practices (with SOA test approach)
PPS
Final Automation Testing
PPT
Centralized test automation framework implementation
PPT
Testing Frameworks
PPTX
Mobile Test Automation Framework : Presented By Shankar Garg
PPTX
Automation_testing
PPT
Guideto Successful Application Test Automation
PDF
Laws of test automation framework
PPTX
Continuous test automation
PDF
Regression Test Automation Framework
PDF
Software Test Patterns: Successes and Challenges
PPTX
Software test automation_overview
PDF
Developing a test automation strategy by Brian Bayer
Framework For Automation Testing Practice Sharing
Test Automation Framework Development Introduction
Test Automation Framework Designs
Automation test scripting guidelines
Selenium Test Automation
Automation testing strategy, approach & planning
Framework for Web Automation Testing
Test Automation Best Practices (with SOA test approach)
Final Automation Testing
Centralized test automation framework implementation
Testing Frameworks
Mobile Test Automation Framework : Presented By Shankar Garg
Automation_testing
Guideto Successful Application Test Automation
Laws of test automation framework
Continuous test automation
Regression Test Automation Framework
Software Test Patterns: Successes and Challenges
Software test automation_overview
Developing a test automation strategy by Brian Bayer
Ad

Viewers also liked (17)

DOCX
Buscadores
PDF
Catalogo claudia 09 2014
PPTX
BI-System with OData and SharePoint Online App (SharePoint Konferenz ppEDV Er...
PDF
Kold Fusion, Tesla, Torsion Felter, Skalar Bølger, »Gratis« Energi.. = Alle J...
PPTX
5 avances tegnologicos que marcaran tendencia en 2014
PDF
Banco Galicia (Caso) - Victoria Pertiné [IAB Forum Uruguay - 2013]
PPTX
ProfitBricks Cloud Computing IaaS An Introduction
PDF
Automation Framework
PDF
The tech. behind RoboBlastPlanet
PDF
Mobile Trends and Innovations
DOC
Client proposal letter sample
PPTX
Software Modeling and the Future of Engineering (ICMT/STAF Keynote at York)
PPT
Los Peic Y Los Pa
PPTX
User Powershell for Task Automation
PDF
Modern Software Architecture Styles and Patterns
PDF
Morfología Urbana
PPTX
Nutzen Sie die Cloud Power für Ihr Microsoft Dynamics CRM
Buscadores
Catalogo claudia 09 2014
BI-System with OData and SharePoint Online App (SharePoint Konferenz ppEDV Er...
Kold Fusion, Tesla, Torsion Felter, Skalar Bølger, »Gratis« Energi.. = Alle J...
5 avances tegnologicos que marcaran tendencia en 2014
Banco Galicia (Caso) - Victoria Pertiné [IAB Forum Uruguay - 2013]
ProfitBricks Cloud Computing IaaS An Introduction
Automation Framework
The tech. behind RoboBlastPlanet
Mobile Trends and Innovations
Client proposal letter sample
Software Modeling and the Future of Engineering (ICMT/STAF Keynote at York)
Los Peic Y Los Pa
User Powershell for Task Automation
Modern Software Architecture Styles and Patterns
Morfología Urbana
Nutzen Sie die Cloud Power für Ihr Microsoft Dynamics CRM
Ad

Similar to Test Automation Framework Online Training by QuontraSolutions (20)

PDF
Test automation wipro
PPTX
automation_test_framewjdsjhdsjhsdorks.pptx
PPTX
Test-Automation-Frameworks-and-Types-in-2024.pptx
PPSX
Software automation
PPT
Hybrid Automation Framework Developement
PPTX
Test automation in project management
PPTX
Automation Test Framework
PDF
The Essence of Test Automation Framework Design.pdf
PPTX
Test Automation Frameworks: Assumptions, Concepts & Tools
PDF
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
PDF
The Essence of Test Automation Framework Design.pdf
PDF
Test Automation Frameworks- The Complete Guide.pdf
PPTX
Automation Best Practices.pptx
DOC
SUMMIT 09 - Startegic Choice Of Test Automation Framework
PPT
Test Automation Framework Designs
PDF
Functional and Non-functional Test automation
PPT
Automated Software Testing Framework Training by Quontra Solutions
PDF
Test Automation Frameworks and Tools: Empowering Quality with Efficiency
PPTX
An Automation Framework That Really Works
PPTX
unit-5 SPM.pptx
Test automation wipro
automation_test_framewjdsjhdsjhsdorks.pptx
Test-Automation-Frameworks-and-Types-in-2024.pptx
Software automation
Hybrid Automation Framework Developement
Test automation in project management
Automation Test Framework
The Essence of Test Automation Framework Design.pdf
Test Automation Frameworks: Assumptions, Concepts & Tools
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
The Essence of Test Automation Framework Design.pdf
Test Automation Frameworks- The Complete Guide.pdf
Automation Best Practices.pptx
SUMMIT 09 - Startegic Choice Of Test Automation Framework
Test Automation Framework Designs
Functional and Non-functional Test automation
Automated Software Testing Framework Training by Quontra Solutions
Test Automation Frameworks and Tools: Empowering Quality with Efficiency
An Automation Framework That Really Works
unit-5 SPM.pptx

More from Quontra Solutions (11)

PPTX
Java Constructors with examples - Quontra Solutions
PPTX
Oracle-12c Online Training by Quontra Solutions
PPTX
Enterprise java beans
PPT
Automation with Selenium Presented by Quontra Solutions
PPT
DataMining and OLAP Technology Concepts Presented By Quontra Solutions
PPTX
Network security by quontra solutions uk
PPTX
Introduction to .net FrameWork by QuontraSolutions
DOC
Informatica Metadata Exchange Frequently Asked Questions by Quontra Solutions
DOC
Informatica metadata exchange frequently asked questions by quontra solutions
PPTX
Dataware house Introduction By Quontra Solutions
PPTX
Selenium overview ppt by quontra solutions
Java Constructors with examples - Quontra Solutions
Oracle-12c Online Training by Quontra Solutions
Enterprise java beans
Automation with Selenium Presented by Quontra Solutions
DataMining and OLAP Technology Concepts Presented By Quontra Solutions
Network security by quontra solutions uk
Introduction to .net FrameWork by QuontraSolutions
Informatica Metadata Exchange Frequently Asked Questions by Quontra Solutions
Informatica metadata exchange frequently asked questions by quontra solutions
Dataware house Introduction By Quontra Solutions
Selenium overview ppt by quontra solutions

Recently uploaded (20)

PDF
Business Ethics Teaching Materials for college
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPTX
GDM (1) (1).pptx small presentation for students
PDF
The Final Stretch: How to Release a Game and Not Die in the Process.
PDF
Insiders guide to clinical Medicine.pdf
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PDF
Introduction-to-Social-Work-by-Leonora-Serafeca-De-Guzman-Group-2.pdf
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PPTX
master seminar digital applications in india
PPTX
PPH.pptx obstetrics and gynecology in nursing
PPTX
Open Quiz Monsoon Mind Game Prelims.pptx
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PPTX
COMPUTERS AS DATA ANALYSIS IN PRECLINICAL DEVELOPMENT.pptx
PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
Business Ethics Teaching Materials for college
2.FourierTransform-ShortQuestionswithAnswers.pdf
FourierSeries-QuestionsWithAnswers(Part-A).pdf
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Pharmacology of Heart Failure /Pharmacotherapy of CHF
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
GDM (1) (1).pptx small presentation for students
The Final Stretch: How to Release a Game and Not Die in the Process.
Insiders guide to clinical Medicine.pdf
human mycosis Human fungal infections are called human mycosis..pptx
Introduction-to-Social-Work-by-Leonora-Serafeca-De-Guzman-Group-2.pdf
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
Microbial diseases, their pathogenesis and prophylaxis
master seminar digital applications in india
PPH.pptx obstetrics and gynecology in nursing
Open Quiz Monsoon Mind Game Prelims.pptx
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
Abdominal Access Techniques with Prof. Dr. R K Mishra
COMPUTERS AS DATA ANALYSIS IN PRECLINICAL DEVELOPMENT.pptx
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...

Test Automation Framework Online Training by QuontraSolutions

  • 1. Test Automation Framework Overview and Strategy Presented By Quontra Solutions IT Courses Online Training With Placement Support. Attend Free Demo Email: info@quontrasolutions.co.uk Contact: 20 - 3734 -1498 Web: www.quontrasolutions.co.uk
  • 2. Contents  Software Framework  The Easy Way  The Better Way - Introduction - PageObject Pattern  Automation Framework Approaches - Data/Table Driven Framework - Keyword Driven Framework - Hybrid Framework - Generic Architecture  Guidelines and Lessons Learnt - Test Organization - Test Writing Style - Browser Updates 2
  • 3. Software Framework What is a software framework? 3
  • 4. Software Framework The definition and key components  A software framework is a universal, reusable software platform used to develop applications, products and solutions.  Software Frameworks include,  Support Programs  Compilers  Code Libraries  APIs  A tool set to integrate different components 4
  • 5. Software Framework Framework properties  A Software framework contain key distinguishing features that separate them from normal libraries.  They are,  Inversion of Control (IOC) the overall program's flow of control is not dictated by the caller, but by the framework.  Default behaviour must actually be some useful behavior and not a series of instructions.  Extensibility can be extended by the user usually by selective overriding or specialized by user code providing specific functionality.  Non modifiable framework code is not allowed to be modified. 5
  • 6. The Easy Way What is the easy way to automate? 6
  • 7. The easy way - Records all user activities and play back  Typically a software testing suite will allow the tester to use the SUT as a user would, through the browser.  In the background the testing suite records all of the clicks and key presses and discards any context.  Later, the recorded events are played back and various assertions are made to ensure the output matches that which is expected. 7
  • 8. The easy way Pros and Cons Pros Easy and does not required highly skilled software developers Large portions of the application can be covered quickly Cons Small changes to the SUT cause massive disruption in the tests Entire suites of tests can be rendered useless resulting in reduce testing coverage for extended periods of time Test maintenance becomes hard  Tests begin to stagnate  Team confidence, in the tests, is reduced. 8
  • 9. The Better Way What could be a better way of automating? 9
  • 10. The better way Introduction  Treat automated testing as software development.  Tests should be created with the same concern for software design principles such as,  Reduced coupling  High cohesion  Proper separation of concerns  Maintainability  Reusability 10
  • 12. The better way Dos and Don’ts  In PageObjects,  The public methods represent the services that the page offers  Try not to expose the internals of the page  Generally don't make assertions  Methods return other PageObjects  Need not represent an entire page  Different results for the same action are modeled as different methods 12
  • 13. The better way Pros and Cons Pros  Selenium WebDriver supports  Increased maintainability  Increase test stability  Readable tests  Tests are easy to author Cons  Larger up-front cost for creating PageObjects  More skill is required to create PageObjects 13
  • 14. Automation Framework Approaches What are the available automation frameworks? 14
  • 15. Automation FrameworkApproaches Data/Table Driven Framework  Data driven is the design of possible inputs what may given by the end user. This would cover maximum probabilities of an input data. It can be a spread sheet or a DB. We have to connect and pass the values to the respective field or element.  Take advantage of tester’s familiarity with test case creation using tables and matrices  Accommodate localization projects  Recognize the importance of patterns in test cases  Enable testers to catalog test cases with Excel spreadsheets  Enable testers to specify expected results in spreadsheets 15
  • 17. Automation FrameworkApproaches Keyword Driven Framework  Keyword driven framework is an action based test method used in planning and implementation of automation. 17
  • 18. Automation FrameworkApproaches Hybrid Framework  A mix of Data driven and Keyword driven frameworks. 18
  • 19. Automation FrameworkApproaches Generic Architecture  A Test Automation Framework should have a multi-tiered architecture. It should consists of the following tiers.  Engine Components in this tier are completely responsible for interacting with the WebDriver interfaces.  Domain This tier is meant to contain only page objects that work against the engine.  Utils This tier is meant to contain very generic, reusable functionality across all the other tiers.  Functional Tests This tier will contain tests that are built on top of MSTest to create actual test scenarios by using page objects in the Domain. 19 Test Automation FrameworkTest Automation Framework (MSTest) Test Execution Engine(MSTest) Test Execution Engine Functional TestsFunctional Tests Domain Engine UtilsUtils Selenium Web Driver APISelenium Web Driver API
  • 20. Guidelines and Lessons Learnt Some important points to keep in mind 20
  • 21. Automation Framework Approaches Guidelines for Automation framework design • Selection of a framework • Don’t reinvent the wheel - Make use of Selenium WebDriver functionalities • Reusability • Support of different application versions • Support of script versioning • Different environment for development and production • Externally Configurable • Minimal changes required for any object changes • Execution - Individual, batch, only failed etc • Status monitoring , Reporting • Minimum dependency on Automation tool for changes 21
  • 22. Automation Framework ApproachesGuidelines for Automation framework design • Easy debugging • Logging - Errors, warnings, etc • Easy to Use • Flexible - Should not impact existing test if changes are required • Performance impacts • Coding Standards 22
  • 23. Functional test organization Physical file organization  Test script files (.cs files) are organized into a folder structure much similar to the web application’s page structure.  Reasons to select this approach:  Easy access to tests  Testing a section of the application is easy 23
  • 24. Functional test organization Test class naming convention  Test class name should start with the containing folder name.  Reasons to select this approach:  Easy to group tests based on test class  Testing a section of the application is easy 24
  • 25. Functional test writing style Behavior Driven Development Style Tests  It is important to be able to break down a test scenario into the components of a behavior driven test to ensure clarity. Very concisely the test writer should be able to dictate a test scenario as:  Given <a precondition>  When <an action takes place>  Then <expected outcome should be present> 25
  • 26. Functional test writing style Behavior Driven Development Style Tests 26
  • 27. Functional test writing style Behavior Driven Development Style Tests  Reasons for selecting this approach:  This style of test writing allows for a test case to be easily verbalized and comparable to the system requirements being validated.  Since this effort is heavily focused on UI automation, it makes sense to capture test cases dictating every behavior of the system and the user. 27
  • 28. Browser Upgrades What if the browser upgrades automatically? − Have a portable version of the browser − Package it with your framework − Starts when the test suite starts 28
  • 29. Summary − Automation should be considered as a development project and not just record and playback of events. Starting automated testing with a good framework ensures low maintenance. Guidelines discussed in this paper can be used as input for developing requirements for a framework. 29