У меня есть код (python / селен):
# Alert start
WebDriverWait(self.driver, 5).until(EC.alert_is_present())
self.driver.switch_to_alert().dismiss()
# Alert end
Первая строка ожидает предупреждения в браузере, а вторая - нажмите кнопку «Отмена», чтобы закрыть это окно. Работает нормально. Я решил создать 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 unilled" ... Я самое новое в python, можете ли вы дать мне предложение?
pageObjectClass:
class PageObject:
def __init__(self, driver, xpathLocator):
self.driver = driver
self.locator = xpathLocator
self.wait = WebDriverWait(self.driver, 100)
def waitElementToBePresent(self, timeout=10):
WebDriverWait(self.driver, timeout).until(
EC.visibility_of_element_located((By.XPATH, self.locator)))
def elementIsPresent(self):
return EC.visibility_of_element_located((By.XPATH, self.locator))
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()