base 基类封装============ from selenium import webdriver import time from unit.getLocator import getLocator class ActtionMethod: def open_browser(self,browser = None,*args): if browser == "Firefox" or browser == "firefox": self.driver = webdriver.Firefox() elif browser =="Ie" or browser=="ie": self.driver = webdriver.Ie() else: self.driver = webdriver.Chrome() def get_url(self,*args): self.driver.get(args[0]) def get_element(self,locator): element= getLocator(self.driver).getbylocal(locator) print(element) return element def element_click(self,*args): self.get_element(args[1]).click() def element_send_value(self,*args): self.get_element(args[1]).send_keys(args[0]) def timeSleep(self,*args): if args[0]==" ": time.sleep(3) time.sleep(args[0]) def get_page_title(self,*args): print(self.driver.title) return self.driver.title def max_page(self,*args): self.driver.maximize_window() def closeBrower(self,*args): self.driver.close() def screenshot(self,*args): self.driver.get_screenshot_as_file("../log/screenshot/" +str(int(time.time()))+ args[0] + ".png") getLocator 元素定位封装================= from event.log_event import log import time import re class getLocator: def __init__(self,driver): self.driver = driver #id=123 def getbylocal(self,elementlocator): try: locator_type=elementlocator.split("=")[0].lower() locator = elementlocator.split("=")[1] if locator_type=="id": return self.driver.find_element_by_id(locator) elif locator_type=="classname": return self.driver.find_element_by_class_name(locator) elif locator_type == "name": return self.driver.find_element_by_name(locator) elif locator_type == "link": return self.driver.find_element_by_partial_link_text(locator) elif locator_type =="tag": return self.driver.find_element_by_tag_name(locator) elif locator_type =="xpath": return self.driver.fin_element_by_xpath(locator) else: return self.driver.find_element_by_css_selector(locator) except Exception as e: log.error(f"错误信息:【{str(e)}】") try: self.driver.get_screenshot_as_file("../log/screenshot/" + str(int(time.time())) + f"没有找到[{elementlocator}]元素" + ".png") except Exception as e: raise e finally: self.driver.close() |
|