Selenium Page Object 自動化測試框架-框架設計
抽空利用ECshop開源項目,寫了下Selenium的Page Object自動化測試框架
Ecshop
├─common
├─config
├─data
├─logs
├─pages
├─picture
├─report
├─script
├─tools
├─run.py
詳細介紹每個組件設計含義。
l common
Python Package格式。存放通用功能函數,如瀏覽器啟動函數、截圖函數、日誌生成函數、獲取URL函數、HTML報告輸出函數、配置文檔讀取函數等。
l config
Directory格式。存放測試執行過程中所需的配置文件,可擴展。
l data
Directory格式。測試執行時所需的測試文件,如測試用例、測試集等。
l logs
Directory格式。存放測試執行時生成的日誌文件,便於測試過程追溯。
l pages
Python Package格式。存放頁面操作類函數,如ECShop前端主頁、註冊頁面、登陸頁面等。
l picture
Directory格式。測試發現缺陷或需定位問題時,可調用common中的截圖函數,將截圖文件保存在此處。
l report
Directory格式。框架中已經有詳細的日誌設計,但如果需要輸出HTML報告,則可調用common中的HTML報告輸出函數,輸出測試報告到此處。
l script
Python Package格式。存放測試執行腳本,業務邏輯類的實現腳本,放在此處,調用pages中的基礎類操作方法。
l tools
Directory格式。selenium針對不同瀏覽器的操作調用方法不同,需載入對應的驅動文件,因此tools中可存放FireFox、IE、Chrome的selenium驅動文件。
l run.py
run.py在測試自動化腳本的工程文件夾的根目錄下,裡面只有核心腳本是用__main__作為主函數入口,執行用例管理函數,如有需要,可利用unittest及HTML報告輸出方法,設計執行腳本。
當框架沒有設計多場景多用例調用函數時,可利用unittest進行測試用例管理。
推薦閱讀:
※Web自動化 - 選擇操作元素 1
※Python多線程Selenium跨瀏覽器測試
※selenium自動化測試入門 操作瀏覽器
※4.3 通過selenium 模擬瀏覽器抓取
※selenium自動化測試入門 下拉框元素定位
TAG:Selenium |