設計思路
框架采用python3 + appium + PO + yaml + ddt + unittest等技術編寫成基礎測試框架,能適應日常測試工作需要。
1、使用Page Object模式將頁面定位和業務操作分開,分離測試對象(元素對象)和測試腳本(用例腳本),一個頁面建一個對象類,提高用例的可維護性;
2、使用yaml管理頁面控件元素數據和測試用例數據。例如元素ID等發生變化時,不需要去修改測試代碼,只需要在對應的頁面元素yaml文件中修改即可;
3、分模塊管理,互不影響,隨時組裝,即拿即用。
測試框架設計
- 應用接口層主要是封裝基礎類、操作及查找類、測試用例、測試數據等,封裝的類來自於底層接口
- 業務層面主要是封裝對象頁面類,一個頁面建一個類,業務層頁面繼承基礎層
- 測試用例針對產品各頁面功能進行構造摸擬執行測試
- 框架層提供基礎組件,支撐整個流程執行及功能擴展,給用例層提供各頁面的元素數據、用例測試數據,測試報告輸出等
- 執用測試用例之前,會自動在后台運行appium服務進程,並同時后續自動執行用例,無需手工操作appium工具運行服務
- 框架支持Jenkins持續集成
測試框架目錄結構
測試框架思維導圖
如要編寫測試用例腳本,只需在Pages、testcase、testdata、testyaml等目錄創建即可。
測試結果展示
- 測試報告
如需要查看截圖,可點擊顯示截圖會彈出圖片顯示。點擊通示或失敗會顯示日志信息。
- 自動生成的用例截圖存放的指定目錄
- 自動生成的日志文件記錄信息,除記錄執行用例過程日志,還會同時記錄 appium中間件通信交互日志。
- 自動發送測試報告至指定的郵箱