SlideShare a Scribd company logo
AUTOMATION TESTING
FRAMEWORK DESIGN
How to design automation testing framework
INTRODUCTION
Automation Testing framework is a way to organize the code so that
can be:
• Reusable
• Scalable
• Maintainable
• Understandable
• Workable
REUSABLE
• A framework once written, should be used by multiple people across
same or multiple team not just for one project, but it should be used
across multiple projects
• Using framework one can reduce the effort spent on ‘X’ component
(library of code) which is already written or available
• Using the already available code will require less or no testing since
the available code is not all new and its already in use
SCALABLE
• Framework written should be scalable, meaning it should be used
from small to bigger project
• Framework should also support multiple projects
• Framework should be scaled to support multiple technologies and
tools
• Technologies can be web or windows or even service based
• Tools can be selenium, Robotium, Jbehave etc.
MAINTAINABLE
• Framework should be easily maintainable, meaning the code need to
be segregated as a logical groups of same type (classes) and
functionalities (methods)
• Each and every code in framework should be documented so that
duplicate code will not emerge as a result lack of knowledge on
existing code
• Framework should be different entity from thet of test project, so
that changes to framework will go to framework project whereas
changes to test goes to test project
WORKABLE
• Framework should be usable by the team.
• Framework should be pluggable and even less knowledge automation
test engineer should work with code using the framework methods
KINDS OF FRAMEWORKS
• There are different kinds of framework and some of the most
commonly used automation testing framework are:
• Data Driven Framework
• Keyword Driven Framework
• Hybrid Framework
DATA DRIVEN FRAMEWORK
• Data Driven framework are used where testing relays on huge number of
input test data.
• E.g. Online Candidate Form , which requires lot of input data to be supplied
by user with different combinations
• These different combinations of data cannot be hardcoded in your Java, C#
classes. Hence they need to be pulled from external data sources
• Hence data driven framework will have code to pull data from any of the
data source , which can then be used to populate data on app UI druing
data entry operations
KEYWORD DRIVEN AUTOMATION
FRAMEWORK
• In Keyword driven frameworks both the app UI object and test data
are coded within Java or C# class files
• Here each and every operations are represented as keyword e.g.
SendEmail(), Logout().
• New test cases can reuse the existing keyword very easily
• Easy to modify and maintain the code
• Require more programming knowledge
HYBRID FRAMEWORK
• Hybrid framework are the combination of Keyword driven and data
driven framework
• Hybrid framework will pull data from external data sources and also
uses keyword to perform operation such as RegisterUser(),
SendEmail() etc.
AUTOMATION TESTING MODELS
• There are different kinds of models available, which can be used while
designing a framework, some of the most commonly used are
• Behavioral Driven Development
• Page Object Model
BDD
• BDD – Behavioral Driven Development is based on Test Driven
Development (TDD) and it aims to bridge the gap between Busines
analyst and developers.
• BDD seems to be like a plain text, but they have their own syntax
based on certain tools
GHERKIN
• Cherkin is the format for Cucumner specification.
• It is a business readable, Domain specific language which will let
anybody to understand the software behavior easily, since they are
PLAIN TEXT.
• Gherkin has some spaces and indentation to define structure.
• Gherkin has some spaces and indentation to define structure.
• Gherkin has very few syntax which make the parser to behave based
on the structure.
• The syntax of Gherkin is very simple and pretty readable as plain text
GHERKIN SYNTAX
BDD
PAGE OBJECT MODEL
• Each webpage UI will have different objects (UI Elements) to interact.
• These objects are identified and written in the code along with their
identification property
• A Page Object simply models the objects within the test code. This
reduces the amount of duplicated code and means that if te UI
changes the fix need only be applied in one place
• The code looks like :
@FindBy(name = “q”)
public WebElement txtSearch
Designing Automation Testing Framework
POINTS TO CONSIDER
As mentioned in the framework design, we are going to use
Page Object Model
Excel to drive data
Custom Selenium wrappers
Write framework as separate project
QUESTIONS??

More Related Content

PPTX
Enhance Your Code Quality with Code Contracts
PDF
Implementing DSLs in practice
PPTX
Dependency injection
PPTX
Adapter Design Pattern
PDF
Internal domain-specific languages
PPTX
What is dotnet (.NET) ?
PPTX
Beginners overview of automated testing with Rspec
PPT
.Net framework
Enhance Your Code Quality with Code Contracts
Implementing DSLs in practice
Dependency injection
Adapter Design Pattern
Internal domain-specific languages
What is dotnet (.NET) ?
Beginners overview of automated testing with Rspec
.Net framework

What's hot (20)

PPTX
Debugging VBScript in InduSoft Web Studio Projects
PPT
Metaprogramming by brandon
PPTX
Application Architecture
PPT
.Net Introduction
PPT
Eclipse
PPTX
Typescript overview
PDF
DSLs: what, why, how
PPT
Introduction to VB.net
PDF
Zoo of domain-specific languages
PPTX
.Net programming with C#
PPT
Code review
PPT
ASP.NET Session 2
PPTX
Java training in bangalore
PPTX
Cqrs and Event Sourcing Intro For Developers
PPT
Dot Net Introduction
PPTX
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
PPTX
PowerBuilder Productive programming
PPTX
Design your own test automation tool
PPTX
Git branching policy and review comment's prefix
PPTX
Lecture 1 introduction to vb.net
Debugging VBScript in InduSoft Web Studio Projects
Metaprogramming by brandon
Application Architecture
.Net Introduction
Eclipse
Typescript overview
DSLs: what, why, how
Introduction to VB.net
Zoo of domain-specific languages
.Net programming with C#
Code review
ASP.NET Session 2
Java training in bangalore
Cqrs and Event Sourcing Intro For Developers
Dot Net Introduction
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
PowerBuilder Productive programming
Design your own test automation tool
Git branching policy and review comment's prefix
Lecture 1 introduction to vb.net
Ad

Viewers also liked (15)

PDF
Carlos Redondo PDF
PPT
C.V. Adriana
PDF
PROGRAMMA_SCIENTIFICO_29_luglio_2016
DOCX
THE LETTER TO THE HEBREWS
PDF
The Girl Guide Canada Cord
PDF
Cleverwood Friday Session : Digital Strategy Youth & Banking
PDF
Interaction13 presentation - Playful Fashion Media
PDF
Teoria e pratica em recuperao de áreas degradadas
PDF
Banking cluster. "Youth and clusters: do clusters visible Russian and global...
PPTX
Процес генерування Ідей
PPTX
CASE STUDY ANALYSIS ON PROGRESSIVE
PDF
Mountain Man Brewing Company:Bringing the Brand to Light
PDF
CloudCamp London 15 Sep 2016 - WebVR
PDF
Digital Strategy in Banking: Thinking about the Customer Experience First
PDF
Best buy-analysis
Carlos Redondo PDF
C.V. Adriana
PROGRAMMA_SCIENTIFICO_29_luglio_2016
THE LETTER TO THE HEBREWS
The Girl Guide Canada Cord
Cleverwood Friday Session : Digital Strategy Youth & Banking
Interaction13 presentation - Playful Fashion Media
Teoria e pratica em recuperao de áreas degradadas
Banking cluster. "Youth and clusters: do clusters visible Russian and global...
Процес генерування Ідей
CASE STUDY ANALYSIS ON PROGRESSIVE
Mountain Man Brewing Company:Bringing the Brand to Light
CloudCamp London 15 Sep 2016 - WebVR
Digital Strategy in Banking: Thinking about the Customer Experience First
Best buy-analysis
Ad

Similar to Autoframework design (20)

PPTX
Selenium Tutorial for Beginners | Automation framework Basics
PDF
Test Automation Framework An Insight into Some Popular Automation Frameworks.pdf
PPTX
automation_test_framewjdsjhdsjhsdorks.pptx
PPTX
Popular Test Automation Frameworks
PDF
The Essence of Test Automation Framework Design.pdf
PPTX
Test-Automation-Frameworks-and-Types-in-2024.pptx
PDF
15 Popular Test Automation Frameworks and How to Choose One.pdf
PDF
Test Automation Frameworks- The Complete Guide.pdf
PDF
Test Automation Framework Design | www.idexcel.com
PDF
The Essence of Test Automation Framework Design.pdf
PPTX
Test automation framework
PPT
Test Automation Framework Online Training by QuontraSolutions
PPT
Designing a Test Automation Framework By Quontra solutions
PDF
Design and Implementation of Hybrid Test Automation Framework for Web Based A...
PDF
Qtp important frameworks
PDF
Pros and Cons of key test automation frameworks.pdf
PPT
Testing Frameworks
PPTX
Test Automation Frameworks: Assumptions, Concepts & Tools
PPT
Hybrid Automation Framework Developement
PDF
Test automation
Selenium Tutorial for Beginners | Automation framework Basics
Test Automation Framework An Insight into Some Popular Automation Frameworks.pdf
automation_test_framewjdsjhdsjhsdorks.pptx
Popular Test Automation Frameworks
The Essence of Test Automation Framework Design.pdf
Test-Automation-Frameworks-and-Types-in-2024.pptx
15 Popular Test Automation Frameworks and How to Choose One.pdf
Test Automation Frameworks- The Complete Guide.pdf
Test Automation Framework Design | www.idexcel.com
The Essence of Test Automation Framework Design.pdf
Test automation framework
Test Automation Framework Online Training by QuontraSolutions
Designing a Test Automation Framework By Quontra solutions
Design and Implementation of Hybrid Test Automation Framework for Web Based A...
Qtp important frameworks
Pros and Cons of key test automation frameworks.pdf
Testing Frameworks
Test Automation Frameworks: Assumptions, Concepts & Tools
Hybrid Automation Framework Developement
Test automation

More from Forge Events (20)

PDF
Аналітика: до, під час та після рекламної кампанії
PDF
Продажі VS стосунки або як не звільнити маркетолога
PPTX
#M/PR: Василь Кремінець "Як зробити 500 заявок на курси іноземної мови через ...
PDF
#M/PR: Анастасія Лавроненко "Ніч перед Kickstarter. Як слланувати Kickstarter...
PDF
"Один раз побачити, ніж сто раз почути. Що таке візуальна мова і на яких інст...
PDF
"Що таке Аккаунтінг? Як працювати з найпотужнішими компаніями на прикладі IBM"
PDF
#UIDay: Марина Хижняк "Взаємодія проектування"
PDF
#M/PR: Марія Письменна "Навіщо компаніям конференції? "
PDF
#M/PR: Кір Горшков: "Системний інтернет-маркетинг для власника бізнесу"
PDF
#M/PR: Назарій Мазур: "Комплексний інтернет-маркетинг для продуктової ІТ-комп...
PPTX
#M/PR: Олесь Кучеренко: "Маркетинг не по інструкції"
PPTX
#M/PR: Юлія Мусаковська: "The Power of Integrated Marketing Communications"
PDF
#M/PR: Марія Письменна: "Навіщо компаніям конференції?"
PPTX
#M/PR Юрій Пирч "Маркетинг у внутрішньому туризму"
PDF
#M/PR: Сем Мамедов: "Що таке робота на Олімпійських Іграх"
PDF
Що таке робота на Олімпійських іграх і як не осоромитись перед IBM?
PPTX
Фундамент политического PR
PPTX
КСВ: Альтруїзм чи розумний егоїзм сучасної компанії.pptx
PPTX
Як зробити це безкоштовно
PPTX
“Співбесіда: По ту сторону столу.
Аналітика: до, під час та після рекламної кампанії
Продажі VS стосунки або як не звільнити маркетолога
#M/PR: Василь Кремінець "Як зробити 500 заявок на курси іноземної мови через ...
#M/PR: Анастасія Лавроненко "Ніч перед Kickstarter. Як слланувати Kickstarter...
"Один раз побачити, ніж сто раз почути. Що таке візуальна мова і на яких інст...
"Що таке Аккаунтінг? Як працювати з найпотужнішими компаніями на прикладі IBM"
#UIDay: Марина Хижняк "Взаємодія проектування"
#M/PR: Марія Письменна "Навіщо компаніям конференції? "
#M/PR: Кір Горшков: "Системний інтернет-маркетинг для власника бізнесу"
#M/PR: Назарій Мазур: "Комплексний інтернет-маркетинг для продуктової ІТ-комп...
#M/PR: Олесь Кучеренко: "Маркетинг не по інструкції"
#M/PR: Юлія Мусаковська: "The Power of Integrated Marketing Communications"
#M/PR: Марія Письменна: "Навіщо компаніям конференції?"
#M/PR Юрій Пирч "Маркетинг у внутрішньому туризму"
#M/PR: Сем Мамедов: "Що таке робота на Олімпійських Іграх"
Що таке робота на Олімпійських іграх і як не осоромитись перед IBM?
Фундамент политического PR
КСВ: Альтруїзм чи розумний егоїзм сучасної компанії.pptx
Як зробити це безкоштовно
“Співбесіда: По ту сторону столу.

Recently uploaded (20)

PPTX
Tartificialntelligence_presentation.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Machine Learning_overview_presentation.pptx
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Encapsulation theory and applications.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Empathic Computing: Creating Shared Understanding
PPTX
A Presentation on Artificial Intelligence
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Mushroom cultivation and it's methods.pdf
PDF
August Patch Tuesday
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Getting Started with Data Integration: FME Form 101
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Tartificialntelligence_presentation.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Univ-Connecticut-ChatGPT-Presentaion.pdf
NewMind AI Weekly Chronicles - August'25-Week II
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Machine learning based COVID-19 study performance prediction
Machine Learning_overview_presentation.pptx
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Encapsulation theory and applications.pdf
Programs and apps: productivity, graphics, security and other tools
A comparative study of natural language inference in Swahili using monolingua...
Empathic Computing: Creating Shared Understanding
A Presentation on Artificial Intelligence
Diabetes mellitus diagnosis method based random forest with bat algorithm
Mushroom cultivation and it's methods.pdf
August Patch Tuesday
Unlocking AI with Model Context Protocol (MCP)
Getting Started with Data Integration: FME Form 101
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...

Autoframework design

  • 1. AUTOMATION TESTING FRAMEWORK DESIGN How to design automation testing framework
  • 2. INTRODUCTION Automation Testing framework is a way to organize the code so that can be: • Reusable • Scalable • Maintainable • Understandable • Workable
  • 3. REUSABLE • A framework once written, should be used by multiple people across same or multiple team not just for one project, but it should be used across multiple projects • Using framework one can reduce the effort spent on ‘X’ component (library of code) which is already written or available • Using the already available code will require less or no testing since the available code is not all new and its already in use
  • 4. SCALABLE • Framework written should be scalable, meaning it should be used from small to bigger project • Framework should also support multiple projects • Framework should be scaled to support multiple technologies and tools • Technologies can be web or windows or even service based • Tools can be selenium, Robotium, Jbehave etc.
  • 5. MAINTAINABLE • Framework should be easily maintainable, meaning the code need to be segregated as a logical groups of same type (classes) and functionalities (methods) • Each and every code in framework should be documented so that duplicate code will not emerge as a result lack of knowledge on existing code • Framework should be different entity from thet of test project, so that changes to framework will go to framework project whereas changes to test goes to test project
  • 6. WORKABLE • Framework should be usable by the team. • Framework should be pluggable and even less knowledge automation test engineer should work with code using the framework methods
  • 7. KINDS OF FRAMEWORKS • There are different kinds of framework and some of the most commonly used automation testing framework are: • Data Driven Framework • Keyword Driven Framework • Hybrid Framework
  • 8. DATA DRIVEN FRAMEWORK • Data Driven framework are used where testing relays on huge number of input test data. • E.g. Online Candidate Form , which requires lot of input data to be supplied by user with different combinations • These different combinations of data cannot be hardcoded in your Java, C# classes. Hence they need to be pulled from external data sources • Hence data driven framework will have code to pull data from any of the data source , which can then be used to populate data on app UI druing data entry operations
  • 9. KEYWORD DRIVEN AUTOMATION FRAMEWORK • In Keyword driven frameworks both the app UI object and test data are coded within Java or C# class files • Here each and every operations are represented as keyword e.g. SendEmail(), Logout(). • New test cases can reuse the existing keyword very easily • Easy to modify and maintain the code • Require more programming knowledge
  • 10. HYBRID FRAMEWORK • Hybrid framework are the combination of Keyword driven and data driven framework • Hybrid framework will pull data from external data sources and also uses keyword to perform operation such as RegisterUser(), SendEmail() etc.
  • 11. AUTOMATION TESTING MODELS • There are different kinds of models available, which can be used while designing a framework, some of the most commonly used are • Behavioral Driven Development • Page Object Model
  • 12. BDD • BDD – Behavioral Driven Development is based on Test Driven Development (TDD) and it aims to bridge the gap between Busines analyst and developers. • BDD seems to be like a plain text, but they have their own syntax based on certain tools
  • 13. GHERKIN • Cherkin is the format for Cucumner specification. • It is a business readable, Domain specific language which will let anybody to understand the software behavior easily, since they are PLAIN TEXT. • Gherkin has some spaces and indentation to define structure. • Gherkin has some spaces and indentation to define structure. • Gherkin has very few syntax which make the parser to behave based on the structure. • The syntax of Gherkin is very simple and pretty readable as plain text
  • 15. BDD
  • 16. PAGE OBJECT MODEL • Each webpage UI will have different objects (UI Elements) to interact. • These objects are identified and written in the code along with their identification property • A Page Object simply models the objects within the test code. This reduces the amount of duplicated code and means that if te UI changes the fix need only be applied in one place • The code looks like : @FindBy(name = “q”) public WebElement txtSearch
  • 18. POINTS TO CONSIDER As mentioned in the framework design, we are going to use Page Object Model Excel to drive data Custom Selenium wrappers Write framework as separate project