python 自动化测试框架 封装selenium_python关键字UI自动化测试框架(2)-基类和元素定位封装...

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()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值