Смотрю обучающий курс по Selenium Webdriver на Udemy. Автор курса, в частности, создает generic method который является оберткой для findElement и принимает на входе локатор и тип локатора и на выходе выдает найденный элемент.
Я для себя не увидел больших преимуществ такого метода перед использованием findElement, но, возможно, я просто чего-то не знаю. Кто-то тоже так делает? Это общепринятая практика?
Мне кажется, вам как не крути придется методы “из коробки” как-то оборачивать, ибо сами по себе они мало что дают. Можно например так обернуть и словить кучу плюсов от этого метода:
from selenium.webdriver.support.ui import WebDriverWait as WDWait
from selenium.webdriver.support import expected_conditions as EC
def wait_and_get_element(self, element_name, timeout=15, loc_type='xpath', by_locator=False):
if not by_locator:
locator = self.locators[element_name]
else:
locator = element_name
WDWait(self.driver, timeout).until(
EC.presence_of_element_located((loc_type, locator))
)
return self.driver.find_element(loc_type, locator)
1 лайк