6. OOP Architecture: Classes, Inheritance & Base Page Models

OOP for Page Object Models

class BasePage:
    def __init__(self, driver):
        self.driver = driver

def navigate(self, url: str):
self.driver.get(url)

class LoginPage(BasePage):
def __init__(self, driver):
super().__init__(driver)
self.username_input = "#username"
self.password_input = "#password"

def login(self, username, password):
self.navigate("https://targetqa.com/login")
print(f"Typing {username} into {self.username_input}")

Task

  • Create a TestUser class:
  • 1. __init__(self, username: str, role: str = "STANDARD").
  • 2. Property or method is_admin() that returns True if self.role == "ADMIN", else False.
πŸ’‘Common doubts
Did you like the problem?
Lesson 6 of 37
Python
Loading code editor…
Next