Sobes.tech
Junior — Middle

რა არის მთავარი მიზანი Page Object-ის ნიმუშის გამოყენებაში ვებ-ინტერფეისების ავტომატიზებულ ტესტირებაში?

sobes.tech AI

პასუხი AI-სგან

Page Object მოდელი გამოიყენება ვებ ინტერფეისების ტესტირების ავტომატიზაციაში, რათა გაუმჯობესდეს ტესტების კოდის წაკითხულობა, შენარჩუნება და განმეორებითი გამოყენება.

მთავარი მიზანია:

  • ვებგვერდთან ურთიერთქმედების გამიჯვნა ცალკეულ კლასში (გვერდის ობიექტი).
  • ინტერფეისის ელემენტების ლოკატორებისა და მოქმედებების დეტალების დამალვა.
  • ტესტების უფრო გასაგები და UI-ის ცვლილებებზე ნაკლებად დამოკიდებული გახადვა.

მაგალითად, ყოველ ტესტში კოდის დაწერა, რომ მოძებნოს ღილაკი და დააწკაპუნოს, ნაცვლად ამისა, შექმნიან გვერდის კლასს, რომელიც ასახავს მომხმარებლის მოქმედებებს:

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()

ეს კლასი გამოიყენება ტესტებში, რაც ამარტივებს შენარჩუნებას და აუმჯობესებს კოდის სტრუქტურას.