基於page-object設計模式
1.lib-base
util--實現讀取配置檔案
driver_manager--通過type引數啟動不同的瀏覽器driver
test_manager--通過type引數生成不同的類,實現多瀏覽器支援
2.lib-page
abstract_page實現
讀取配置:url、使用者資訊
登入功能
*:注意單獨除錯的時候需要在開頭加上sys.path.append(r'd:\test_browser'),否則from lib.base.util import util會報錯
***page實現每個page頁功能,如建立bug、建立文件功能
3.case
test_abstract實現
成員變數type,driver,config_file
在setup和teardown中實現driver啟停
截圖功能
test***page實現每個page頁測試用例
寫用例的時候先寫page再寫對應的case
三. 配置管理
使用configparser模組
[info]
url=
admin_user=admin
admin_pswd=123456
admin_name=管理員
qa_user=test01
qa_pswd=123456
qa_name=測試1
rd_user=test02
rd_pswd=123456
rd_name=測試2
[test]
dir_screenshot=d:/test_browser/data/screenshot
import configparser
config=configparser.configparser()
config.read('base.conf')
print config.get('info','qa_user')
四. 多瀏覽器
採用類的繼承方式生成針對不同瀏覽器的類,實現多瀏覽器支援
from new import classobj
class testmanager:
@staticmethod
def gettest(clz,type):
new_classname=str(clz.__name__)+'-'+str(type).capitalize() #駝峰式寫法,首字母大寫
new_clz=classobj(new_classname,(clz,),)
return unittest.makesuite(new_clz)
python selenium 多標籤的一些操作
有時候做ui自動化,乙個瀏覽器標籤頁是很難解決問題,比如最近的專案,乙個頁面退出了登入,另外乙個頁面還在操作,那操作的選單或者按鈕就需要進行相應的許可權校驗 這時候多標籤就是乙個解決方案 使用chrome瀏覽器 driver webdriver.chrome driver.get 獲取當前頁面的控制...
Python Selenium環境搭建
安裝python 設定 python 的環境變數 安裝目錄 安裝目錄 scripts 使用 pip安裝 selenium pip install selenium 安裝完python pip工具,在安裝目錄的 scripts 目錄下。在 dos下直接執行 pip install selenium 即...
Python Selenium 學習筆記
1 判斷元素是否存在 try driver.find element.xx a true except a false if a true print 元素存在 elif a false print 元素不存在 2 判斷元素是否顯示 driver.find element by id outputb...