Функция alert_is_present() и switch_to_alert()

Есть такой код:

# Alert start
WebDriverWait(self.driver, 5).until(EC.alert_is_present())
self.driver.switch_to_alert().dismiss()
# Alert end

Первая строчка - проверяет всплывающее окно на наличие. Вторая строчка - нажимает на кнопку [Cancel].

Я хочу создать 2 функции, а потом, вызывать их при необходимости. Ещё не разобрался с возвратами и т.д., подскажите:

def alertIsPresent(self, timeout=10):
    WebDriverWait(self.driver, timeout).until(EC.alert_is_present())

def alertDismiss(self):
    alert = self.driver.switch_to_alert()
    alert.dismiss()

Вызываю я функцию так:

PageObject.alertIsPresent()
PageObject.alertDismiss()

Но последняя скобка подчёркнута, и написано, что должен быть self.

Чувствую что-то не правильно.


Ответы (1 шт):

Автор решения: Jazzis

Объявите экземпляр класса и вызывайте эти методы из него:

page_obj = PageObject(driver=..., xpathlocator=...)

page_obj.alertIsPresent()
page_obj.alertDismiss()
→ Ссылка