SlideShare a Scribd company logo
2
Most read
4
Most read
Copyright © 2017, edureka and/or its affiliates. All rights reserved.
Agenda
Copyright © 2017, edureka and/or its affiliates. All rights reserved.
Agenda For The Session
i. Why Use Page Object Model (POM)?
ii. What Is Page Object Model?
iii. What Is Page Factory?
iv. Demo: Creating POM & Page Factory
Copyright © 2017, edureka and/or its affiliates. All rights reserved.
Why Use Page Object Model?
A Web page has ‘x’ no. of elements, which are used in multiple test cases.
Now if the path/locator of any element changes, then what happens?
PROBLEM STATEMENT
A web page with ‘x’ elements
OH MY GOD !!
Do I have to change
the element locators
in entire test script?
Test Script
SOLUTION
Test
case
Element
locator
Copyright © 2017, edureka and/or its affiliates. All rights reserved.
What Is Page Object Model?
Page Object Model is a design pattern to create an Object Repository for web UI elements.
Here, all the element locators used by the application will be stored in a class file separately from test case.
Test
Case
Page
Class
Locators & test script stored separately
POM Design Pattern
‱ Element locators
‱ Methods performing operations on elements.
Page Class contains
‱ Actual test scenario
‱ Calls to methods in page class with arguments.
Test Case contains
Copyright © 2017, edureka and/or its affiliates. All rights reserved.
What Is Page Factory?
POM Implementation
With
Page Factory
Without
Page Factory
‱ Uses By().
‱ No imports needed.
‱ No cache storage.
‱ Uses @FindBy().
‱ Import package: Page factory.
‱ Cache lookup is faster.
Page Factory is a built-in class in Selenium for maintaining object repository. (Import package: Page Factory)
With Page Factory, initElement() statement can be used for easily looking up elements in page class.
Page Factory allows storing of page elements in cache memory using @CacheLookup annotation.
1. Maintainability
2. Reusability
3. Flexibility
4. Optimized code
ADVANTAGES
Copyright © 2017, edureka and/or its affiliates. All rights reserved.
Hands-on:-
Page Object Model & Page Factory
Let’s learn how to implement POM & Page Factory.
Copyright © 2017, edureka and/or its affiliates. All rights reserved.
Session In A Minute
Why Use Page Object Model?
What Is Page Factory?
What Is Page Object Model?
Demo: POM & Page Factory In Selenium
Copyright © 2017, edureka and/or its affiliates. All rights reserved.
WebDriver vs. IDE vs. RC
➱ Data Warehouse is like a relational database designed for analytical needs.
➱ It functions on the basis of OLAP (Online Analytical Processing).
➱ It is a central location where consolidated data from multiple locations (databases) are stored.

More Related Content

PPTX
Setting up Page Object Model in Automation Framework
valuebound
 
PDF
Page Object Model and Implementation in Selenium
Zoe Gilbert
 
PDF
Selenium Maven With Eclipse | Edureka
Edureka!
 
PPTX
Selenium introduction
Deepak Kumar Digar
 
PDF
Page object pattern
Petro Konopelko
 
PPTX
Automation - web testing with selenium
Tzirla Rozental
 
PPTX
Test automation
Xavier Yin
 
PPT
Test Automation Framework Designs
Sauce Labs
 
Setting up Page Object Model in Automation Framework
valuebound
 
Page Object Model and Implementation in Selenium
Zoe Gilbert
 
Selenium Maven With Eclipse | Edureka
Edureka!
 
Selenium introduction
Deepak Kumar Digar
 
Page object pattern
Petro Konopelko
 
Automation - web testing with selenium
Tzirla Rozental
 
Test automation
Xavier Yin
 
Test Automation Framework Designs
Sauce Labs
 

What's hot (20)

PPT
Hybrid framework
Sudhakar Mangi
 
PPTX
TestNG Framework
Levon Apreyan
 
PPT
Selenium Concepts
Swati Bansal
 
PDF
Automation Testing using Selenium
Naresh Chintalcheru
 
PPTX
Selenium
Batch2016
 
PPTX
Selenium WebDriver
Yuriy Bezgachnyuk
 
PPTX
Robot framework
Rochak Bhalla
 
PDF
Criando uma arquitetura para seus testes de API com RestAssured
Elias Nogueira
 
PPTX
Automation Testing by Selenium Web Driver
Cuelogic Technologies Pvt. Ltd.
 
PPTX
TestNG with selenium
Gousalya Ramachandran
 
PPT
Ppt of soap ui
pkslide28
 
PPT
QSpiders - Automation using Selenium
Qspiders - Software Testing Training Institute
 
PPT
Hybrid Automation Framework Development introduction
Ganuka Yashantha
 
PDF
Test Automation Using Python | Edureka
Edureka!
 
PDF
Automated testing with Cypress
Yong Shean Chong
 
PPTX
API Test Automation Using Karate (Anil Kumar Moka)
Peter Thomas
 
PPTX
Introduction to Selenium Web Driver
Return on Intelligence
 
PDF
Behavior Driven Development and Automation Testing Using Cucumber
KMS Technology
 
PDF
Introduction to Robot Framework
Somkiat Puisungnoen
 
PPT
Selenium Automation Framework
Mindfire Solutions
 
Hybrid framework
Sudhakar Mangi
 
TestNG Framework
Levon Apreyan
 
Selenium Concepts
Swati Bansal
 
Automation Testing using Selenium
Naresh Chintalcheru
 
Selenium
Batch2016
 
Selenium WebDriver
Yuriy Bezgachnyuk
 
Robot framework
Rochak Bhalla
 
Criando uma arquitetura para seus testes de API com RestAssured
Elias Nogueira
 
Automation Testing by Selenium Web Driver
Cuelogic Technologies Pvt. Ltd.
 
TestNG with selenium
Gousalya Ramachandran
 
Ppt of soap ui
pkslide28
 
QSpiders - Automation using Selenium
Qspiders - Software Testing Training Institute
 
Hybrid Automation Framework Development introduction
Ganuka Yashantha
 
Test Automation Using Python | Edureka
Edureka!
 
Automated testing with Cypress
Yong Shean Chong
 
API Test Automation Using Karate (Anil Kumar Moka)
Peter Thomas
 
Introduction to Selenium Web Driver
Return on Intelligence
 
Behavior Driven Development and Automation Testing Using Cucumber
KMS Technology
 
Introduction to Robot Framework
Somkiat Puisungnoen
 
Selenium Automation Framework
Mindfire Solutions
 
Ad

Viewers also liked (20)

PDF
What Is DevOps? | Introduction To DevOps | DevOps Tools | DevOps Tutorial | D...
Edureka!
 
PDF
Angular 4 Tutorial For Beginners | Angular 4 Introduction | Angular 4 Trainin...
Edureka!
 
PDF
Django Rest Framework | How to Create a RESTful API Using Django | Django Tut...
Edureka!
 
PDF
Android Studio Tutorial For Beginners -2 | Android Development Tutorial | And...
Edureka!
 
PDF
Docker Swarm For High Availability | Docker Tutorial | DevOps Tutorial | Edureka
Edureka!
 
PDF
Artificial Neural Network Tutorial | Deep Learning With Neural Networks | Edu...
Edureka!
 
PDF
Docker Compose | Containerizing MEAN Stack Application | DevOps Tutorial | Ed...
Edureka!
 
PDF
Big Data Use Cases | Hadoop Tutorial for Beginners | Hadoop Training | Edureka
Edureka!
 
PDF
Power BI Training | Getting Started with Power BI | Power BI Tutorial | Power...
Edureka!
 
PDF
Bitcoin Blockchain Explained | Understanding Bitcoin and Blockchain | Blockch...
Edureka!
 
PDF
Angular 4 Components | Angular 4 Tutorial For Beginners | Learn Angular 4 | E...
Edureka!
 
PDF
Cloud Computing Tutorial For Beginners | What is Cloud Computing | AWS Traini...
Edureka!
 
PDF
Angular 4 Data Binding | Two Way Data Binding in Angular 4 | Angular 4 Tutori...
Edureka!
 
PDF
Introduction To TensorFlow | Deep Learning Using TensorFlow | TensorFlow Tuto...
Edureka!
 
PDF
Azure Interview Questions And Answers | Azure Tutorial For Beginners | Azure ...
Edureka!
 
PDF
React Components Lifecycle | React Tutorial for Beginners | ReactJS Training ...
Edureka!
 
PDF
Machine Learning In Python | Python Machine Learning Tutorial | Deep Learning...
Edureka!
 
PDF
ReactJS Tutorial For Beginners | ReactJS Redux Training For Beginners | React...
Edureka!
 
PDF
Big Data Tutorial For Beginners | What Is Big Data | Big Data Tutorial | Hado...
Edureka!
 
PDF
Introduction to Data Science
Edureka!
 
What Is DevOps? | Introduction To DevOps | DevOps Tools | DevOps Tutorial | D...
Edureka!
 
Angular 4 Tutorial For Beginners | Angular 4 Introduction | Angular 4 Trainin...
Edureka!
 
Django Rest Framework | How to Create a RESTful API Using Django | Django Tut...
Edureka!
 
Android Studio Tutorial For Beginners -2 | Android Development Tutorial | And...
Edureka!
 
Docker Swarm For High Availability | Docker Tutorial | DevOps Tutorial | Edureka
Edureka!
 
Artificial Neural Network Tutorial | Deep Learning With Neural Networks | Edu...
Edureka!
 
Docker Compose | Containerizing MEAN Stack Application | DevOps Tutorial | Ed...
Edureka!
 
Big Data Use Cases | Hadoop Tutorial for Beginners | Hadoop Training | Edureka
Edureka!
 
Power BI Training | Getting Started with Power BI | Power BI Tutorial | Power...
Edureka!
 
Bitcoin Blockchain Explained | Understanding Bitcoin and Blockchain | Blockch...
Edureka!
 
Angular 4 Components | Angular 4 Tutorial For Beginners | Learn Angular 4 | E...
Edureka!
 
Cloud Computing Tutorial For Beginners | What is Cloud Computing | AWS Traini...
Edureka!
 
Angular 4 Data Binding | Two Way Data Binding in Angular 4 | Angular 4 Tutori...
Edureka!
 
Introduction To TensorFlow | Deep Learning Using TensorFlow | TensorFlow Tuto...
Edureka!
 
Azure Interview Questions And Answers | Azure Tutorial For Beginners | Azure ...
Edureka!
 
React Components Lifecycle | React Tutorial for Beginners | ReactJS Training ...
Edureka!
 
Machine Learning In Python | Python Machine Learning Tutorial | Deep Learning...
Edureka!
 
ReactJS Tutorial For Beginners | ReactJS Redux Training For Beginners | React...
Edureka!
 
Big Data Tutorial For Beginners | What Is Big Data | Big Data Tutorial | Hado...
Edureka!
 
Introduction to Data Science
Edureka!
 
Ad

Similar to Selenium Page Object Model Using Page Factory | Selenium Tutorial For Beginners | Edureka (20)

PDF
Mastering Test Automation: How to Use Selenium Successfully
Applitools
 
PDF
Adobe Experience Manager Core Components
Gabriel Walt
 
PDF
Data Driven Framework In Selenium Webdriver | Data Driven Testing | Selenium ...
Edureka!
 
PDF
How To Use Selenium Successfully
Dave Haeffner
 
PPTX
Learn How to Use Atomic Design to Make Your Site Manageable and Adaptable
Acquia
 
PDF
How to use selenium successfully
TEST Huddle
 
PPT
2310 b 15
Krazy Koder
 
PPT
2310 b 15
Krazy Koder
 
PDF
How To Use Selenium Successfully (Java Edition)
Sauce Labs
 
PDF
#1 - HTML5 Overview
iloveigloo
 
PDF
Web Development with HTML5, CSS3 & JavaScript
Edureka!
 
PDF
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Mack Hardy
 
PPTX
Project_Goibibo information technology automation testing.pptx
skhushi9980
 
PDF
Writing an extensible web testing framework ready for the cloud slide share
Mike Ensor
 
PPTX
Build single page applications using AngularJS on AEM
AdobeMarketingCloud
 
PDF
Build single page applications using AngularJS on AEM
connectwebex
 
PPTX
Build single page applications using AngularJS on AEM
AdobeMarketingCloud
 
PDF
Selenium & PHPUnit made easy with Steward (Berlin, April 2017)
Ondƙej Machulda
 
PPT
Test Automation Framework Development Introduction
Ganuka Yashantha
 
PDF
Python Django tutorial | Getting Started With Django | Web Development With D...
Edureka!
 
Mastering Test Automation: How to Use Selenium Successfully
Applitools
 
Adobe Experience Manager Core Components
Gabriel Walt
 
Data Driven Framework In Selenium Webdriver | Data Driven Testing | Selenium ...
Edureka!
 
How To Use Selenium Successfully
Dave Haeffner
 
Learn How to Use Atomic Design to Make Your Site Manageable and Adaptable
Acquia
 
How to use selenium successfully
TEST Huddle
 
2310 b 15
Krazy Koder
 
2310 b 15
Krazy Koder
 
How To Use Selenium Successfully (Java Edition)
Sauce Labs
 
#1 - HTML5 Overview
iloveigloo
 
Web Development with HTML5, CSS3 & JavaScript
Edureka!
 
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Mack Hardy
 
Project_Goibibo information technology automation testing.pptx
skhushi9980
 
Writing an extensible web testing framework ready for the cloud slide share
Mike Ensor
 
Build single page applications using AngularJS on AEM
AdobeMarketingCloud
 
Build single page applications using AngularJS on AEM
connectwebex
 
Build single page applications using AngularJS on AEM
AdobeMarketingCloud
 
Selenium & PHPUnit made easy with Steward (Berlin, April 2017)
Ondƙej Machulda
 
Test Automation Framework Development Introduction
Ganuka Yashantha
 
Python Django tutorial | Getting Started With Django | Web Development With D...
Edureka!
 

More from Edureka! (20)

PDF
What to learn during the 21 days Lockdown | Edureka
Edureka!
 
PDF
Top 10 Dying Programming Languages in 2020 | Edureka
Edureka!
 
PDF
Top 5 Trending Business Intelligence Tools | Edureka
Edureka!
 
PDF
Tableau Tutorial for Data Science | Edureka
Edureka!
 
PDF
Python Programming Tutorial | Edureka
Edureka!
 
PDF
Top 5 PMP Certifications | Edureka
Edureka!
 
PDF
Top Maven Interview Questions in 2020 | Edureka
Edureka!
 
PDF
Linux Mint Tutorial | Edureka
Edureka!
 
PDF
How to Deploy Java Web App in AWS| Edureka
Edureka!
 
PDF
Importance of Digital Marketing | Edureka
Edureka!
 
PDF
RPA in 2020 | Edureka
Edureka!
 
PDF
Email Notifications in Jenkins | Edureka
Edureka!
 
PDF
EA Algorithm in Machine Learning | Edureka
Edureka!
 
PDF
Cognitive AI Tutorial | Edureka
Edureka!
 
PDF
AWS Cloud Practitioner Tutorial | Edureka
Edureka!
 
PDF
Blue Prism Top Interview Questions | Edureka
Edureka!
 
PDF
Big Data on AWS Tutorial | Edureka
Edureka!
 
PDF
A star algorithm | A* Algorithm in Artificial Intelligence | Edureka
Edureka!
 
PDF
Kubernetes Installation on Ubuntu | Edureka
Edureka!
 
PDF
Introduction to DevOps | Edureka
Edureka!
 
What to learn during the 21 days Lockdown | Edureka
Edureka!
 
Top 10 Dying Programming Languages in 2020 | Edureka
Edureka!
 
Top 5 Trending Business Intelligence Tools | Edureka
Edureka!
 
Tableau Tutorial for Data Science | Edureka
Edureka!
 
Python Programming Tutorial | Edureka
Edureka!
 
Top 5 PMP Certifications | Edureka
Edureka!
 
Top Maven Interview Questions in 2020 | Edureka
Edureka!
 
Linux Mint Tutorial | Edureka
Edureka!
 
How to Deploy Java Web App in AWS| Edureka
Edureka!
 
Importance of Digital Marketing | Edureka
Edureka!
 
RPA in 2020 | Edureka
Edureka!
 
Email Notifications in Jenkins | Edureka
Edureka!
 
EA Algorithm in Machine Learning | Edureka
Edureka!
 
Cognitive AI Tutorial | Edureka
Edureka!
 
AWS Cloud Practitioner Tutorial | Edureka
Edureka!
 
Blue Prism Top Interview Questions | Edureka
Edureka!
 
Big Data on AWS Tutorial | Edureka
Edureka!
 
A star algorithm | A* Algorithm in Artificial Intelligence | Edureka
Edureka!
 
Kubernetes Installation on Ubuntu | Edureka
Edureka!
 
Introduction to DevOps | Edureka
Edureka!
 

Recently uploaded (20)

PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PDF
Beyond Automation: The Role of IoT Sensor Integration in Next-Gen Industries
Rejig Digital
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PDF
A Day in the Life of Location Data - Turning Where into How.pdf
Precisely
 
PDF
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
PDF
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PDF
Software Development Company | KodekX
KodekX
 
PPT
Coupa-Kickoff-Meeting-Template presentai
annapureddyn
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PDF
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PPTX
Comunidade Salesforce SĂŁo Paulo - Desmistificando o Omnistudio (Vlocity)
Francisco Vieira JĂșnior
 
PPTX
Coupa-Overview _Assumptions presentation
annapureddyn
 
PPTX
IoT Sensor Integration 2025 Powering Smart Tech and Industrial Automation.pptx
Rejig Digital
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
Beyond Automation: The Role of IoT Sensor Integration in Next-Gen Industries
Rejig Digital
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
A Day in the Life of Location Data - Turning Where into How.pdf
Precisely
 
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
Software Development Company | KodekX
KodekX
 
Coupa-Kickoff-Meeting-Template presentai
annapureddyn
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
Comunidade Salesforce SĂŁo Paulo - Desmistificando o Omnistudio (Vlocity)
Francisco Vieira JĂșnior
 
Coupa-Overview _Assumptions presentation
annapureddyn
 
IoT Sensor Integration 2025 Powering Smart Tech and Industrial Automation.pptx
Rejig Digital
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 

Selenium Page Object Model Using Page Factory | Selenium Tutorial For Beginners | Edureka

  • 1. Copyright © 2017, edureka and/or its affiliates. All rights reserved. Agenda
  • 2. Copyright © 2017, edureka and/or its affiliates. All rights reserved. Agenda For The Session i. Why Use Page Object Model (POM)? ii. What Is Page Object Model? iii. What Is Page Factory? iv. Demo: Creating POM & Page Factory
  • 3. Copyright © 2017, edureka and/or its affiliates. All rights reserved. Why Use Page Object Model? A Web page has ‘x’ no. of elements, which are used in multiple test cases. Now if the path/locator of any element changes, then what happens? PROBLEM STATEMENT A web page with ‘x’ elements OH MY GOD !! Do I have to change the element locators in entire test script? Test Script SOLUTION Test case Element locator
  • 4. Copyright © 2017, edureka and/or its affiliates. All rights reserved. What Is Page Object Model? Page Object Model is a design pattern to create an Object Repository for web UI elements. Here, all the element locators used by the application will be stored in a class file separately from test case. Test Case Page Class Locators & test script stored separately POM Design Pattern ‱ Element locators ‱ Methods performing operations on elements. Page Class contains ‱ Actual test scenario ‱ Calls to methods in page class with arguments. Test Case contains
  • 5. Copyright © 2017, edureka and/or its affiliates. All rights reserved. What Is Page Factory? POM Implementation With Page Factory Without Page Factory ‱ Uses By(). ‱ No imports needed. ‱ No cache storage. ‱ Uses @FindBy(). ‱ Import package: Page factory. ‱ Cache lookup is faster. Page Factory is a built-in class in Selenium for maintaining object repository. (Import package: Page Factory) With Page Factory, initElement() statement can be used for easily looking up elements in page class. Page Factory allows storing of page elements in cache memory using @CacheLookup annotation. 1. Maintainability 2. Reusability 3. Flexibility 4. Optimized code ADVANTAGES
  • 6. Copyright © 2017, edureka and/or its affiliates. All rights reserved. Hands-on:- Page Object Model & Page Factory Let’s learn how to implement POM & Page Factory.
  • 7. Copyright © 2017, edureka and/or its affiliates. All rights reserved. Session In A Minute Why Use Page Object Model? What Is Page Factory? What Is Page Object Model? Demo: POM & Page Factory In Selenium
  • 8. Copyright © 2017, edureka and/or its affiliates. All rights reserved. WebDriver vs. IDE vs. RC ➱ Data Warehouse is like a relational database designed for analytical needs. ➱ It functions on the basis of OLAP (Online Analytical Processing). ➱ It is a central location where consolidated data from multiple locations (databases) are stored.