上次写的被自己覆盖了,害的要重新写,内心有点崩溃
示例的github地址:https://github.com/moxiawujiang/UIAuto
po设计模式(PageObject):自动化测试脚本的减少代码重复、更易读、减少维护成本
基础层---元素定位层--元素操作层--业务层--编写case--收集case并执行
项目结构如下
基础层:base_page.py中封装 一些selenium的基本操作,如元素定位、输入、清除、获取元素text等操作方法
_author__ = '芜疆'
#encoding=utf-8
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from unittest import TestCase
class BasePage:
def __init__(self,driver):
self.driver =driver
#封装定位方式
def find_element(self,*args):
try:
return WebDriverWait(self.driver, 5, 0.5).until(EC.visibility_of_element_located(*args))
except Exception as e:
raise e
def find_elements(self,*loc):
try:
return WebDriverWait(self.driver, 5, 0.5).until(EC.visibility_of_any_elements_located(*loc)