Sobes.tech
Junior — Middle

Mis on peamine eesmärk kasutada Page Object mustrit veebiliideste testimise automatiseerimisel?

sobes.tech AI

Vastus AI-lt

Page Object muster on kasutusel veebiliidese testimise automatiseerimisel, et parandada testide koodi loetavust, hooldust ja taaskasutust.

Peamine eesmärk:

  • Eraldada veebilehega suhtlemine eraldi klassis (lehekülje objekt).
  • Peita elementide lokalisaatorite ja toimingute üksikasju.
  • Muuta testid arusaadavamaks ja vähem sõltuvaks UI muudatustest.

Näiteks, selle asemel, et igas testis kirjutada kood nupu otsimiseks ja selle klõpsamiseks, luuakse lehekülje klass, mille meetodid peegeldavad kasutaja tegevusi:

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

    def login(self, username, password):
        self.driver.find_element_by_css_selector(self.username_input).send_keys(username)
        self.driver.find_element_by_css_selector(self.password_input).send_keys(password)
        self.driver.find_element_by_css_selector(self.login_button).click()

Testid kasutavad seda klassi, mis lihtsustab hooldust ja parandab koodi struktuuri.