0% found this document useful (0 votes)
0 views

import java (1)

The Page Object Model (POM) is a design pattern that organizes web UI elements into separate classes for improved maintainability, code reusability, and better readability in test scripts. Each class corresponds to a web page and contains methods for interacting with the page's elements, allowing for easier updates and reduced code duplication. Implementing POM in Selenium involves creating page classes, defining web elements, and using these classes in test scripts to perform actions.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
0 views

import java (1)

The Page Object Model (POM) is a design pattern that organizes web UI elements into separate classes for improved maintainability, code reusability, and better readability in test scripts. Each class corresponds to a web page and contains methods for interacting with the page's elements, allowing for easier updates and reduced code duplication. Implementing POM in Selenium involves creating page classes, defining web elements, and using these classes in test scripts to perform actions.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

POM What is Page Object Model (POM)?

The Page Object Model is a design pattern that


creates an object repository for web UI elements. Each web page in the application is
represented by a separate class, which contains the elements and methods related to that
page. This helps in organizing the code better, making it more readable and maintainable.
Why Use POM? • Improved Maintainability: Changes in the UI require changes only in the
page classes, not in every test script. • Code Reusability: Common actions can be reused
across different tests, reducing code duplication. • Better Readability: Tests become more
readable as they use methods from page classes rather than direct WebDriver calls.
Implementing POM in Selenium 1. Create Page Classes: Each class corresponds to a web
page and contains locators and methods for interacting with those elements. 2. Define
Web Elements: Use locators to define the web elements on the page. 3. Implement
Methods: Create methods to perform actions like clicking buttons or entering text. 4. Use
Page Objects in Tests: In your test scripts, create instances of the page classes and call
their methods. Example Implementation Step 1: Create a Page Class Here’s an example of
a LoginPage class representing a login page: package pages; import
org.openqa.selenium.By; import org.openqa.selenium.WebDriver; public class LoginPage
{ private WebDriver driver; // Locators private By usernameField = By.id("username");
private By passwordField = By.id("password"); private By loginButton = By.id("login"); //
Constructor public LoginPage(WebDriver driver) { this.driver = driver; } // Method to enter
username public void enterUsername(String username)
{ driver.findElement(usernameField).sendKeys(username); } // Method to enter password
public void enterPassword(String password)
{ driver.findElement(passwordField).sendKeys(password); } // Method to click login button
public void clickLogin() { driver.findElement(loginButton).click(); } } Step 2: Create Test
Class In your test class, you can use the LoginPage class as follows: import
org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver;
import pages.LoginPage; public class LoginTest { public static void main(String[] args) { //
Set up WebDriver System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
WebDriver driver = new ChromeDriver(); // Navigate to login page
driver.get("http://example.com/login"); // Create an instance of LoginPage LoginPage
loginPage = new LoginPage(driver);

You might also like