通过函数封装实现POM设计思想

from selenium import webdriver
from time import sleep
'''
常规操作:
    1、启动浏览器
    2、访问Url
    3、元素定位
    4、输入
    5.点击
    6.退出
'''
def open_browser(browser_type):
    driver = getattr(webdriver, browser_type)()
    return driver
class TestUtils:
    #   构造函数
    def __init__(self,browser_type):
        self.driver = open_browser(browser_type)
    #   访问指定url
    def visit(self,url):
        self.driver.get(url)
    #   元素定位
    def locator(self,name,value):
        return self.driver.find_element(name,value)
    #   元素输入
    def loc_input(self,name,value,txt):
        self.locator(name,value).send_keys(txt)
    #   元素的点击
    def loc_click(self,name,value):
        self.locator(name,value).click()
    #关闭浏览器
    def quit(self):
        sleep(3)
        self.driver.quit()
    #




    #   元素定位,常用8种方法
    # def locator(self,loc_type,loc):
    #     if  loc_type =='name':
    #         return self.driver.find_element_by_name(loc)
    #     elif    loc_type =='id':
    #         return  self.driver.find_element_by_id(loc)
    #     elif    loc_type =='xpath':
    #         return self.driver.find_element_by_xpath(loc)
    #     elif    loc_type == 'linktext':
    #         return self.driver.find_element_by_linktext(loc)
    #     else:
    #         print('元素定位错误!,请重新定位元素')
    # #   元素定位2


调用测试:

from webdemo.TestUtils import TestUtils
#   创建关键字驱动类对象
bp = TestUtils('Chrome')
bp.visit('https://www.baidu.com')
bp.loc_input('id','kw','云视讯')
bp.loc_click('id','su')
bp.quit()

 

posted @ 2020-08-26 09:52  橙子Cjw  阅读(182)  评论(0编辑  收藏  举报