def fill_field(self, text, locator): try: if text == "random": text = functions_.random("AUT_") self.driver.find_element(*get_locator(locator)).send_keys(text) else: self.driver.find_element(*get_locator(locator)).send_keys(text) except NoSuchElementException: print('no se encontrĂ³ el elemento')
def get_text(self, locator): try: time.sleep(2) message = self.driver.find_element(*get_locator(locator)).text return message except NoSuchElementException: return False
def click_element(self, locator): try: time.sleep(1) self.driver.find_element(*get_locator(locator)).click() return True except NoSuchElementException: print('no se encontrĂ³ el elemento') return False
def send_keys(self,text, locator): time.sleep(1) self.driver.find_element(*get_locator(locator)).send_keys(text)
def double_click(self,element): element_to_double_clic = self.driver.find_element(*get_locator(element)) ActionChains(self.driver).double_click(element_to_double_clic).perform()
def hover(self,element): time.sleep(2) element_to_hover_over = self.driver.find_element(*get_locator(element)) ActionChains(self.driver).move_to_element(element_to_hover_over).perform() self.driver.implicitly_wait(40)
def drag_and_drop(self,source_element,dest_element): source_element = self.driver.find_element(*get_locator(source_element)) dest_element = self.driver.find_element(*get_locator(dest_element)) ActionChains(self.driver).drag_and_drop(source_element, dest_element).perform()
def search(self, search_term, locator): self.fill_field(search_term, *get_locator(locator)) self.click_element(*get_locator(locator))
def scroll_interno(self, locator): element = self.driver.find_element(*get_locator(locator)) self.driver.execute_script("arguments[0].scrollIntoView(true);", element)
def clear(self,locator): self.driver.find_element(*get_locator(locator)).clear()
def is_element_located(self,locator): delay = 10 # seconds try: myElem = WebDriverWait(self.driver, delay).until(EC.presence_of_element_located(*get_locator(locator))) print ("Page is ready!") return True except TimeoutException: print ("Loading took too much time!") return False
def select_dropdown_value(self, locator, value): selectOption = Select(self.driver.find_element(*get_locator(locator))) option_selected = selectOption.select_by_value(value)
def select_fill(self,option,locator): time.sleep(2) select = Select(self.driver.find_element(*get_locator(locator))) #select.select_by_index(option) select.select_by_visible_text(option)