测试封装类

#-*- coding:utf-8 -*-
#导包
from selenium import webdriver
#导入time包
import time
#导入枚举包
from enum import Enum
#导入休眠的包
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

#工具类的封装元素
# 1: 首先遵循高内聚 低耦合的思想
# 高内聚 就是将有关联的代码封装在一个类里面,供外部类调用
# 低耦合 不相关的代码尽量封装在不同的类里面,相互之间的调用比较方便
# selenium 类封装的内容
# 1: 打开关闭浏览器
# 2: 三种休眠方式 1: 强制等待 2: 隐式休眠 3: 显式休眠
# 休眠方式有三种
# 1: 强制休眠  强制休眠,当代码执行到该句代码的时候,进行休眠,当休眠结束执行接写来的代码
# 2: 隐式休眠  隐式休眠,当窗口打开,开始计算休眠时间,这里指定的是浏览器的总共休眠时间,如果这里用到1毛,就在总休眠时间里面减去1秒
# 3: 显示休眠  显式休眠,可以设置指定的休眠时间,同时可以设置每隔几秒检查一次元素右没有加载,如果加载了,休眠时间就结束了

# 3: 8种查找单个类型的控件方式 id name class xpath css link tag partai_link 同时也有八种点击事件和8种输入
# 4: 8种查询一组的方式,与查询一个相比就是多个s,返回的是list列表 同时也有八种点击事件和8种输入
# 5: 切换窗口的方式,通过 八种方式点击同时切换窗口,分别封装一个获取当前的窗口的,获取所有窗口的,还有一个封装点击切换窗口
# 6: 切换 frame 的方式 也有八种
# 7: 使用 js定位的方式
# 8: 使用 js实现显示隐藏功能
# 9: 切出 frame的方式
# 10: 断言的封装
# 11: 获取表示的功能
# 12: 设置浏览器的宽度和高度
# 13: 浏览器的前进 和 后退
# 14: 鼠标事件
# 15: 键盘事件
# 16: alert conform prompt  alert 这是一个警告框,只有一个按钮, confrom 有两个按钮, prompt 可以输入内容,同时有两个按钮,同时能获取输入的内融
# 17: 下拉框的封装
# 18: 下载的封装
# 19:

# 面试问题: 做过二次封装吗?
# 最low的回答: 会不会? 会, 做过没有? 做过
# 做过,比如web端针对 selenium,封装,封装的原因就在写项目的时候提高容错率,比如查找控件,如果不封装,网速太慢,就会导致代码奔溃,包括,我一般封装成首先使用显示
# 休眠去查找元素,如果存在,我采去控件,这样很多错误就避免了,再比如,点击控件,我们一般首先查找控件,再进行点击,我直接点击






# 声明类 继承object
class chromeutil(object):

    #打开浏览器
    def chrome_start(self,url):

        # self 类本身的意思,在这里的意思就是将属性复制给类
        # python 基本类型有五种 NUmber list tupe 字典 string 类型
        # Number 类型有 : int float long complex复数类型
        # list 与 元祖的区别 : 元祖里面的数据是不能修改的,list 里面的数据可以修改,lsit标识符 [] 元祖()
        # 打开浏览器
        self.driver=webdriver.Chrome(executable_path="D:\google\Chrome\Application\chromedriver.exe")
        #设置最大化
        self.driver.maximize_window()
        #打开指定网页
        self.driver.get(url)
        #设置休眠时间
        self.TimeSleep(ENUMS.TWO_TIME)
        pass

    #关闭浏览器
    def chrome_close(self):

        self.driver.quit()

        pass
    #关闭当前网页
    def chrome_current(self):
        # 如果想关闭当前新建的窗口
        # 必须首先切换窗口到当前窗口,再调用关闭才是关闭当前网页
        # 如果跳转的是新窗口,而你没有切换窗口,关闭是上一个页面

        # 比如调用切窗口最后才能,调用关闭的方法
        self.driver.close()
        pass

    #强制休眠
    def TimeSleep(self,number):
        #休眠
        time.sleep(number)
        pass
    #隐式休眠
    def TimeImplay(self,number):

        self.driver.implicitly_wait(number)

        pass

    #开始查找控件
    def FindID(self,ID):

        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids=(By.ID,ID)
        #检查元素是不是存在
        WebDriverWait(self.driver,ENUMS.TWENTY_TIME,ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))
        #开始查找控件
        return self.driver.find_element_by_id(ID)
    #通过id点击
    def ClickID(self,ID):

        self.FindID(ID).click()

    #通过 id输入
    def SendkeysID(self,ID,message):

        #查找控件,首先清空数据,同时在输入内容
        self.FindID(ID).clear()

        self.FindID(ID).send_keys(message)

    #通过id获取控件内容
    def getIdText(self,ID):

        return self.FindID(ID).text

    #通过id判断控件是不是可见
    def isDispalyID(self,ID):

        return self.FindID(ID).is_displayed()

    #通过id判断控件有没有被选中
    def isSelectID(self,ID):

        return self.FindID(ID).is_selected()

    # 通过 id 判断 input 标签 是不是可编辑,返回true表示可以编辑,返回false表示不可见编辑
    def isEnableID(self,ID):

         return self.FindID(ID).is_enabled()

    #开始查找控件
    def FindName(self,name):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件
        names=(By.NAME,name)
        #检查元素是不是存在
        WebDriverWait(self.driver,ENUMS.TWENTY_TIME,ENUMS.ONE_HALF).until(EC.presence_of_element_located(names))
        #开始查找控件
        return self.driver.find_element_by_name(name)

    #通过name点击
    def ClickName(self,name):
        self.FindName(name).click()

    #通过name输入
    def SendkeysName(self,name,message):
         self.FindName(name).send_keys(message)

    #通过name获取控件内容
    def getNameText(self,name):
        return self.FindName(name).text

    #通过name判断控件是不是可控
    def isDispalyName(self,name):
        return self.FindName(name).is_displayed()

    #通过name判断控件有没有被选中
    def isSelectName(self,name):
        return self.FindName(name).is_selected()
    # 通过 id 判断 input 标签 是不是可编辑,返回true表示可以编辑,返回false表示不可见编辑
    def isEnableName(self,name):
        return

    # 开始查找控件

    def FindClass(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.CLASS_NAME, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))

        # 开始查找控件
        return self.driver.find_element_by_class_name(cls)

        # 通过 id 点击

    def ClickClass(self, cls):
        self.FindClass(cls).click()

        # 通过 id输入

    def SendkeysClass(self, cls, message):
        self.FindClass(cls).send_keys(message)

        # 通过 id 获取控件内容

    def getClassText(self, cls):

        return self.FindClass(cls).text

        # 通过 id判断 控件是不是可见

    def isDispalyClass(self, cls):

        return self.FindClass(cls).is_displayed()

        #  通过 id判断控件有没有被选中

    def isSelectClass(self, cls):

        return self.FindClass(cls).is_selected()

        # 通过 id 判断 input 标签 是不是可编辑,返回true表示可以编辑,返回false表示不可见编辑

    def isEnableClass(self, cls):

        return self.FindClass(cls).is_enabled()


    # 开始查找控件

    def FindXpath(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.XPATH, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))

        # 开始查找控件
        return self.driver.find_element_by_xpath(cls)

        # 通过 id 点击

    def ClickXpath(self, cls):
        self.FindXpath(cls).click()

        # 通过 id输入

    def SendkeysXpath(self, cls, message):
        self.FindXpath(cls).send_keys(message)

        # 通过 id 获取控件内容

    def getXpathText(self, cls):

        return self.FindXpath(cls).text

        # 通过 id判断 控件是不是可见

    def isDispalyXpath(self, cls):

        return self.FindXpath(cls).is_displayed()

        #  通过 id判断控件有没有被选中

    def isSelectXpath(self, cls):

        return self.FindXpath(cls).is_selected()

        # 通过 id 判断 input 标签 是不是可编辑,返回true表示可以编辑,返回false表示不可见编辑

    def isEnableXpath(self, cls):

        return self.FindXpath(cls).is_enabled()

    # 开始查找控件

    def FindLink(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.LINK_TEXT, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))
        # 开始查找控件
        return self.driver.find_element_by_link_text(cls)

        # 通过 id 点击

    def ClickLink(self, cls):
        self.FindLink(cls).click()

        # 通过 id输入

    def SendkeysLink(self, cls, message):
        self.FindLink(cls).send_keys(message)

        # 通过 id 获取控件内容

    def getLinkText(self, cls):

        return self.FindLink(cls).text

        # 通过 id判断 控件是不是可见

    def isDispalyLink(self, cls):

        return self.FindLink(cls).is_displayed()

        #  通过 id判断控件有没有被选中

    def isSelectLink(self, cls):

        return self.FindLink(cls).is_selected()

        # 通过 id 判断 input 标签 是不是可编辑,返回true表示可以编辑,返回false表示不可见编辑

    def isEnableLink(self, cls):

        return self.FindLink(cls).is_enabled()


    # 开始查找控件

    def FindTag(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.TAG_NAME, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))

        # 开始查找控件
        return self.driver.find_element_by_tag_name(cls)

        # 通过 id 点击

    def ClickTag(self, cls):
        self.FindTag(cls).click()

        # 通过 id输入

    def SendkeysTag(self, cls, message):
        self.FindTag(cls).send_keys(message)

        # 通过 id 获取控件内容

    def getTagText(self, cls):

        return self.FindTag(cls).text

        # 通过 id判断 控件是不是可见

    def isDispalyTag(self, cls):

        return self.FindTag(cls).is_displayed()

        #  通过 id判断控件有没有被选中

    def isSelectTag(self, cls):

        return self.FindTag(cls).is_selected()

        # 通过 id 判断 input 标签 是不是可编辑,返回true表示可以编辑,返回false表示不可见编辑

    def isEnableTag(self, cls):

        return self.FindTag(cls).is_enabled()

    # 开始查找控件

    def FindPart(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.PARTIAL_LINK_TEXT, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))

        # 开始查找控件
        return self.driver.find_element_by_partial_link_text(cls)

        # 通过 id 点击

    def ClickPart(self, cls):
        self.FindPart(cls).click()

        # 通过 id输入

    def SendkeysPart(self, cls, message):
        self.FindPart(cls).send_keys(message)

        # 通过 id 获取控件内容

    def getPartText(self, cls):

        return self.FindPart(cls).text

        # 通过 id判断 控件是不是可见

    def isDispalyPart(self, cls):

        return self.FindPart(cls).is_displayed()

        #  通过 id判断控件有没有被选中

    def isSelectPart(self, cls):

        return self.FindPart(cls).is_selected()

        # 通过 id 判断 input 标签 是不是可编辑,返回true表示可以编辑,返回false表示不可见编辑

    def isEnablePart(self, cls):

        return self.FindPart(cls).is_enabled()

    # 开始查找控件

    def FindCss(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.CSS_SELECTOR, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))

        # 开始查找控件
        return self.driver.find_element_by_css_selector(cls)

        # 通过 id 点击

    def ClickCss(self, cls):
        self.FindCss(cls).click()

        # 通过 id输入

    def SendkeysCss(self, cls, message):
        self.FindCss(cls).send_keys(message)

        # 通过 id 获取控件内容

    def getCssText(self, cls):

        return self.FindCss(cls).text

        # 通过 id判断 控件是不是可见

    def isDispalyCss(self, cls):

        return self.FindCss(cls).is_displayed()

        #  通过 id判断控件有没有被选中

    def isSelectCss(self, cls):

        return self.FindCss(cls).is_selected()

        # 通过 id 判断 input 标签 是不是可编辑,返回true表示可以编辑,返回false表示不可见编辑

    def isEnableCss(self, cls):

        return self.FindCss(cls).is_enabled()

        # 开始查找控件
    def FindIds(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.ID, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))
        # 开始查找控件
        return self.driver.find_elements_by_id(cls)

        # 通过 id 点击

    def ClickIDs(self, cls):
        self.FindIds(cls).click()

        # 通过 id输入
    def SendkeysIDs(self, cls, message):
        self.FindIds(cls).send_keys(message)

    # 开始查找控件
    def FindNames(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.NAME, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))
        # 开始查找控件
        return self.driver.find_elements_by_name(cls)

        # 通过 id 点击
    def ClickNames(self, cls):
        self.FindNames(cls).click()

        # 通过 id输入
    def SendkeysNames(self, cls, message):
        self.FindNames(cls).send_keys(message)

        # 开始查找控件
    def FindClasses(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.CLASS_NAME, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))
        # 开始查找控件
        return self.driver.find_elements_by_class_name(cls)

        # 通过 id 点击

    def ClickClasses(self, cls):
        self.FindClasses(cls).click()

        # 通过 id输入
    def SendkeysClasses(self, cls, message):
        self.FindClasses(cls).send_keys(message)

        # 开始查找控件
    def FindCsss(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.CSS_SELECTOR, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))
        # 开始查找控件
        return self.driver.find_elements_by_css_selector(cls)

        # 通过 id 点击

    def ClickCsss(self, cls):
        self.FindCsss(cls).click()

        # 通过 id输入
    def SendkeysCsss(self, cls, message):
        self.FindCsss(cls).send_keys(message)

        # 开始查找控件
    def FindParts(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.PARTIAL_LINK_TEXT, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))
        # 开始查找控件
        return self.driver.find_elements_by_partial_link_text(cls)

        # 通过 id 点击

    def ClickParts(self, cls):
        self.FindParts(cls).click()

        # 通过 id输入
    def SendkeysParts(self, cls, message):
        self.FindParts(cls).send_keys(message)
        # 开始查找控件
    def FindTags(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.TAG_NAME, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))
        # 开始查找控件
        return self.driver.find_elements_by_tag_name(cls)

        # 通过 id 点击
    def ClickTags(self, cls):
        self.FindTags(cls).click()

        # 通过 id输入
    def SendkeysTags(self, cls, message):
        self.FindTags(cls).send_keys(message)
        # 开始查找控件
    def FindLinks(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.LINK_TEXT, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))
        # 开始查找控件
        return self.driver.find_elements_by_link_text(cls)

        # 通过 id 点击

    def ClickLinks(self, cls):
        self.FindLinks(cls).click()

        # 通过 id输入
    def SendkeysLinks(self, cls, message):
        self.FindLinks(cls).send_keys(message)

    # 开始查找控件
    def FindXpaths(self, cls):
        # 使用显示休眠检查元素是不是存在,如果不存在继续休眠,每个0.5秒检查一次,如果存在就执行下面查找控件的代码
        ids = (By.XPATH, cls)
        # 检查元素是不是存在
        WebDriverWait(self.driver, ENUMS.TWENTY_TIME, ENUMS.ONE_HALF).until(EC.presence_of_element_located(ids))
        # 开始查找控件
        return self.driver.find_elements_by_xpath(cls)

        # 通过 id 点击

    def ClickXpaths(self, cls):
        self.FindXpaths(cls).click()

        # 通过 id输入

    def SendkeysXpaths(self, cls, message):
        self.FindXpaths(cls).send_keys(message)

    #切换窗口
    #获取当前窗口
    def getCurrentWindow(self):

        return self.driver.current_window_handle

    #获取所有的窗口,进行切换
    def switch_to_window(self,current_window):
        #设置休眠
        self.TimeSleep(ENUMS.TWO_TIME)
        #获取所有的窗口
        all_window=self.driver.window_handles
        #使用for循环进行切换
        for window in all_window:

            if window!=current_window:

                self.driver.switch_to.window(window)

    #通过id点击进行切换窗口的方法
    def ClickID_switch_to_window(self,ID):

        current_window=self.getCurrentWindow()
        #点击
        self.ClickID(ID)
        #切换
        self.switch_to_window(current_window)

    # 通过id点击进行切换窗口的方法
    def ClickName_switch_to_window(self, name):
        current_window = self.getCurrentWindow()
        # 点击
        self.ClickName(name)
        # 切换
        self.switch_to_window(current_window)

    # 通过id点击进行切换窗口的方法
    def ClickTag_switch_to_window(self, Tag):
        current_window = self.getCurrentWindow()
        # 点击
        self.ClickTag(Tag)
        # 切换
        self.switch_to_window(current_window)

    # 通过id点击进行切换窗口的方法
    def ClickClass_switch_to_window(self, clas):
        current_window = self.getCurrentWindow()
        # 点击
        self.ClickClass(clas)
        # 切换
        self.switch_to_window(current_window)

    # 通过id点击进行切换窗口的方法
    def ClickCss_switch_to_window(self, css):
        current_window = self.getCurrentWindow()
        # 点击
        self.ClickCss(css)
        # 切换
        self.switch_to_window(current_window)

    # 通过id点击进行切换窗口的方法
    def ClickLink_switch_to_window(self, link):
        current_window = self.getCurrentWindow()
        # 点击
        self.ClickLink(link)
        # 切换
        self.switch_to_window(current_window)

    # 通过id点击进行切换窗口的方法
    def ClickPark_switch_to_window(self, park):
        current_window = self.getCurrentWindow()
        # 点击
        self.ClickPart(park)
        # 切换
        self.switch_to_window(current_window)

    # 通过id点击进行切换窗口的方法
    def ClickXpath_switch_to_window(self, xpath):
        current_window = self.getCurrentWindow()
        # 点击
        self.ClickXpath(xpath)
        # 切换
        self.switch_to_window(current_window)
    #切换 frame
    def switch_to_frame_tag(self,tag):

        self.driver.switch_to.frame(self.FindTag(tag))

    # 切换 frame
    def switch_to_frame_id(self, ID):

        self.driver.switch_to.frame(self.FindID(ID))
    # 切换 frame
    def switch_to_frame_name(self, name):

        self.driver.switch_to.frame(self.FindName(name))
    # 切换 frame
    def switch_to_frame_css(self, css):

        self.driver.switch_to.frame(self.FindCss(css))

    # 切换 frame
    def switch_to_frame_link(self, link):
        self.driver.switch_to.frame(self.FindLink(link))

    # 切换 frame
    def switch_to_frame_park(self, park):
        self.driver.switch_to.frame(self.FindPart(park))
    # 切换 frame
    def switch_to_frame_xpath(self, xpath):
        self.driver.switch_to.frame(self.FindXpath(xpath))
    # 切换 frame
    def switch_to_frame_class(self, clas):
        self.driver.switch_to.frame(self.FindCsss(clas))

    #切出frame方法
    def checkout_frame(self):

        self.driver.switch_to.default_content()

    #执行js的定位到指定位置
    def exe_js_id(self,ID):

        self.driver.execute_script("arguments[0].scrollIntoView();",self.FindID(ID))

        pass

    # 执行js的定位到指定位置
    def exe_js_name(self, name):

        self.driver.execute_script("arguments[0].scrollIntoView();", self.FindName(name))

        pass
    # 执行js的定位到指定位置
    def exe_js_link(self, link):

        self.driver.execute_script("arguments[0].scrollIntoView();", self.FindLink(link))

        pass
    # 执行js的定位到指定位置
    def exe_js_tag(self, tag):

        self.driver.execute_script("arguments[0].scrollIntoView();", self.FindTag(tag))

        pass
    # 执行js的定位到指定位置
    def exe_js_class(self, clas):

        self.driver.execute_script("arguments[0].scrollIntoView();", self.FindClass(clas))

        pass
    # 执行js的定位到指定位置
    def exe_js_css(self, css):

        self.driver.execute_script("arguments[0].scrollIntoView();", self.FindCss(css))

        pass
    # 执行js的定位到指定位置
    def exe_js_park(self, park):

        self.driver.execute_script("arguments[0].scrollIntoView();", self.FindPart(park))

        pass
    # 执行js的定位到指定位置
    def exe_js_xpath(self, xpath):

        self.driver.execute_script("arguments[0].scrollIntoView();", self.FindXpath(xpath))

        pass
    # 获取title
    def getTitle(self):

        return self.driver.title

    # 断言
    # 断言title,注意断言是单元测试语法,如果我们在这里想封装断言,必须将单元测试的self对象传递过来
    def AssertTitle(self,self1,expect):

        self1.assertEqual(self.getTitle(),expect)

        pass

    # 断言控件内容,分为八种,通过id断言
    def AssertId(self,self1,expect,ID):

        self1.assertEqual(self.getIdText(ID),expect)

    def AssertClass(self,self1,expect,cls):

        self1.assertEqual(self.getClassText(cls),expect)

    def AssertName(self, self1, expect, name):

        self1.assertEqual(self.getNameText(name), expect)

    def AssertTag(self, self1, expect, tag):

        self1.assertEqual(self.getTagText(tag), expect)

    def AssertLink(self, self1, expect, link):

        self1.assertEqual(self.getLinkText(link), expect)

    def AssertCss(self, self1, expect, css):

        self1.assertEqual(self.getCssText(css), expect)

    def AssertPark(self, self1, expect, park):

        self1.assertEqual(self.getPartText(park), expect)

    def AssertXpath(self, self1, expect, xpath):

        self1.assertEqual(self.getXpathText(xpath), expect)




# 封装枚举类 就是为了方便以后不能设置时间,直接调用,
class ENUMS(Enum):
    # 两秒
    TWO_TIME = 2
    # 五秒
    FIVE_TIME = 5
    # 10 秒
    TEN_TIME = 10
    # 20 秒
    TWENTY_TIME = 20
    # 0.5 秒
    ONE_HALF = 0.5


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值