用python+selenium實作UI自動化測驗,要有一些HTML和xpth的基礎,當然python基礎一定是必須要會的,這里建議花點時間了解下相關基礎知識,到后面也會輕松很多,
一、什么是selenium?
selenium是個強大的工具集,支持快速開發測驗自動化,支持在多種瀏覽器平臺上執行測驗,支持多開發語言,如:Python、Java、ruby、C#等,本次選擇Python3作為開發語言,
二、用python做測驗的優點
學習難度小,開發周期短,對目前國內大多數測驗人員來說,編碼經驗不足,python是個很好的入門語言,膠水語言,能與C++, Java, COM, and .NET,Object-C 整合,
測驗部門要做單元測驗,介面測驗,因為人員比例的關系,不可能讓測驗人員同時掌握多門語言,python可以對C/C++, Java, Object-C進行介面封裝后,實作單元測驗,語法簡約,清晰,減少后期維護的難度,
三、自動化測驗框架
一個典型的自動化測驗框架一般包括用例管理模塊、自動化執行控制器、報表生成模塊和日志模塊等,這些模塊之間不是相互孤立的,而是相輔相成的,

下面來介紹下每個模塊的邏輯單元:
用例管理模塊
用例管理模塊包括用例的添加、修改、洗掉等操作單元,這些單元也會涉及到用例書寫的模式,測驗資料的管理、可復用庫等
自動化執行控制器
控制器是自動化用例執行的組織模塊,主要負責以什么方式去執行用例,比較典型的控制器有用戶圖形界面(GUI)和“commandline+檔案”兩種,
報表生成模塊
報表生成模塊主要負責執行完用例以后生成報表,報表一般以HTML格式居多,資訊主要包括用例的執行情況及相應的總結報告,另外還可以添加發送郵件功能,
日志模塊
日志模塊主要用來記錄用例的執行情況,以便于更高效的調查用例失敗資訊及追蹤用例執行情況,
四、自動化框架的設計與實作
方案設計
1、編程代碼選擇 python3
2、工具selenium + 單元測驗框架 unittest
3、編譯器: IDE/pycharm
結構設計

cases:
根據功能劃分用例管理

用例實作
com


config
edata: 環境配置模塊
env.json 、enviroment.yaml 實作城市選擇及SIT、UAT環境切換
sdata: 資料配置
各類資料json檔案、銀行資料、產品資訊、個人資訊等
elements: 元素定義
locator.py 元素定義、menu 、into_a_management.yaml 等

lib
第三方模塊參考, 版本管理

report
管理日志報告
report.xlsx 自動化執行結果生成excel報表
report.xlsx

index.html

需要改進的模塊
對于現有實作的測驗框架,已經可以滿足web物件的自動化需求,但還是有些可以改進提高的地方,比如:
針對部分測驗用例是否可以嘗試資料驅動
添加螢屏截圖功能
封裝selenium中By庫中的函式,以便更高效的定位頁面元素等
結合業界優秀的自動化框架和實踐持續改進
五、總結
基于selenium實作的web自動化框架不僅輕量級而且靈活,可以快速的開發自動化測驗用例,結合上面的框架設計思路,希望對大家以后的web自動化框架的設計和實作有所幫助,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/376874.html
標籤:其他
