def select_all_options(driver, select_xpath, list_options, plus_xpath): """ Метод выбирает все варианты в селекторе :param driver: :param select_xpath: :param plus_xpath: :return: """ for key, option in enumerate(list_options): obj_option = HelpNavigateMethods.get_element_navigate(driver, select_xpath % (key, option)) obj_option.click() if key != len(list_options) - 1: obj_plus = HelpNavigateMethods.get_element_navigate(driver, select_xpath % (key, option) + plus_xpath) obj_plus.click()
def select_multi_cast(driver, category_list, xpath_category, xpath_multi): """ Метод выбирает категории из селектеров :param driver: :param category_list: - список категорий, от родительской до финальной :param xpath_category: - xpath селектера :return: """ for index, category in enumerate(category_list): select_cat = HelpNavigateMethods.get_element_navigate(driver, xpath_category % (index, category)) select_cat.click() plus_btn = HelpNavigateMethods.get_element_navigate( driver, xpath_category % (index, category) + xpath_multi ) plus_btn.click()
def test_authorization_by_mail(self, name_user='******'): """ Title: Авторизация пользователя по e-mail со статичными данными. """ user = users[name_user] service_log.run(self) # Переходим на страницу авторизации self.go_authorization_page(self.driver) # Вводим данные на авторизацию auth_form = self.get_auth_email_form(self.driver) auth_form["email_input"].send_keys(user["email"]) auth_form["password_input"].send_keys(user["passwd"]) HelpNavigateMethods.element_click(self.driver, auth_form["login_btn"], change_page_url=True) # Проверка виджета профиля self.check_menu_profile_widget_total(self.driver, user["name"])
def select_category(driver, category_list, xpath_category): """ Метод выбирает категории из селектеров :param driver: :param category_list: - список категорий, от родительской до финальной :param xpath_category: - xpath селектера :return: """ for category in category_list: select_cat = HelpNavigateMethods.get_element_navigate(driver, xpath_category % category) select_cat.click()
def set_input_fields(driver, list_data=None): """ Метод заполняет текстовые поля при создании товара :param driver: :param list_data: :return: """ if list_data is None: list_data = HelpGoodData.LIST_TEXT_INPUT for data in list_data: obj_input = HelpNavigateMethods.get_element_navigate(driver, list_data[data]["xpath"]) obj_input.send_keys(list_data[data]["data"])
def setUp(cls): # Подготовка работы с selenium cls.driver = HelpLifeCycleMethods.get_driver() HelpNavigateMethods.go_to_main_page(cls.driver) service_log.preparing_env(cls)