import os, sys sys.path.append(os.getcwd()) from selenium.webdriver.common.by import By from base.base_action import BaseAction from base.base_yaml import yaml_reader yaml = yaml_reader("webform_text") class WebformText(BaseAction): def __init__(self, driver): BaseAction.__init__(self, driver) def click_button(self, item): item_ele = yaml["button"][item]["attribute"] item_position = (By.XPATH, item_ele) self.click(item_position) def check_text(self, item): item_ele = yaml["text"][item]["attribute"] item_position = (By.XPATH, item_ele) item_text = yaml["text"][item]["content"] assert self.get_text(item_position) == item_text
import os, sys sys.path.append(os.getcwd()) from selenium.webdriver.common.by import By from base.base_action import BaseAction from base.base_yaml import yaml_reader import re yaml = yaml_reader("webform_input") data_yaml = yaml_reader("webform_data") class WebformInput(BaseAction): def __init__(self, driver): BaseAction.__init__(self, driver) def click_button(self, item): item_ele = yaml["button"][item]["attribute"] item_position = (By.XPATH, item_ele) self.click(item_position) def check_placeholder(self, item): item_ele = yaml["input_box"][item]["attribute"] item_position = (By.XPATH, item_ele) item_placeholder = yaml["input_box"][item]["placeholder"] assert self.get_placeholder(item_position) == item_placeholder def check_maxlength(self, item): item_ele = yaml["input_box"][item]["attribute"] item_func = re.findall(r"id='(.*)'", item_ele)[0] item_position = ("Id", item_func)
import os, sys import time sys.path.append(os.getcwd()) from base.base_driver import golobal_driver, en_driver, ja_driver from page.webform_input import WebformInput from page.webform_selector import WebformSelector from base.base_yaml import yaml_reader, txt_written, txt_over_written from selenium.webdriver.common.by import By driver_yaml = yaml_reader("driver") yaml = yaml_reader("webform_data")["ja"] cdp_list = driver_yaml["condition"]["cdp"] dt_list = driver_yaml["condition"]["dt"] aoi_list = driver_yaml["condition"]["aoi"] upload_file = driver_yaml["file"] class FillWebform(): def __init__(self): self.driver_en = ja_driver() self.page_en_input = WebformInput(self.driver_en) self.page_en_selector = WebformSelector(self.driver_en) def select_en_dt(self, value): self.page_en_selector.select_option("deal_type en", value) def select_en_ot(self, value): self.page_en_selector.select_option("opportunity_type en", value) def select_en_cdp(self, value):
import os, sys sys.path.append(os.getcwd()) from selenium.webdriver.common.by import By from base.base_action import BaseAction from base.base_yaml import yaml_reader from selenium.webdriver.support.ui import Select yaml = yaml_reader("webform_selector") class WebformSelector(BaseAction): def __init__(self, driver): BaseAction.__init__(self, driver) def click_button(self, item): item_ele = yaml["button"][item]["attribute"] item_position = (By.XPATH, item_ele) self.click(item_position) def check_options(self, item): item_ele = yaml["selector"][item]["attribute"] options_list = Select(self.driver.find_element(By.XPATH, item_ele)).options options = list(option.text for option in options_list) item_value = yaml["selector"][item]["value"] assert options == item_value def select_option(self, item, value): item_ele = yaml["selector"][item]["attribute"] Select(self.driver.find_element(By.XPATH, item_ele)).select_by_value(value)