一、項目簡介
?歷時一個假期,Automated_platform?第一版完工,是一款基于po模式的自動化測試平臺,采用后端技術為Django+celery+RabbitMQ+mysql?配置mysql數據庫,進行數據遷移后,運行項目后,即可成功訪問http://127.0.0.1:8000/app/login/
后臺管理系統:http://127.0.0.1:8000/admin/
二、功能模塊?
1、登錄/注冊模塊
2、首頁可視化
3、工作臺(前期工作)
首先新建項目、配置其項目運行環境url,在項目下新建頁面,在頁面下定位該頁面所需要的全部元素位置,包括id、class、name、xpath、class selector等等定位方式
不難發現,這其實就是pom模式,POM設計思想將頁面UI元素對象、業務邏輯(定位元素 以及 操作定位后的元素)、Case測試數據等分離開來,使得代碼邏輯更加清晰,復用性,可維護性更高的一種方法,普遍運用于UI自動化測試當中。
a、項目管理?
b、頁面管理/頁面元素?
c、引入關鍵字驅動技術
核心思想就是把測試用例和測試步驟分離,把我們在web測試中會用到的基本方法(比如點擊、輸入文本、截圖、放大窗口等等)在后端封裝起來,前端新建時只需選擇所需要的類包和方法,即可完成關鍵字驅動。
4、核心功能(編寫并運行測試用例、查看測試結果)?
a、新建測試用例
在新建測試用例的時候首先選擇項目,然后添加步驟的時候首先選擇關鍵字,然后選擇頁面和元素(比如選擇了左鍵點擊關鍵字,然后選擇首頁中的搜索按鈕)就可以完成左鍵點擊搜索按鈕的操作,這樣我們就實現了測試用例和測試步驟的分離。
??
可以選擇參數值、或參數自動化
b、設置斷言?
這個就不多說了,就是預期結果和實際結果是否匹配,通常我們假設它成功,然后選擇成功后會出現的某個元素,提前給這個元素做一個定位,然后在斷言那里選擇該頁面中的那個元素即可.
c、測試結果查看
4、微服務?
a、前置登錄配置
在一些場景中,需要在用戶登錄的狀態下進行操作,接口測試中我們可以配置token,在web中我們可以自動化登錄操作,這樣在需要登錄的場景下可以引入此前置登錄,節省測試用例步驟,可以做到更好的維護,方便我們定位錯誤步驟。
b、分布式任務(定時)
三、需要改善的點
?1、引入開源第三方測試報告(美觀!)
2、配置郵箱,可以做到一鍵發送測試報告
3、做下載文件接口,實現下載測試報告(pdf、word、html)
4、個人中心
5、角色權限分配、不同的角色進入系統,只可以看自己新建的用例和測試結果
6、美化前端(我做的比較粗糙)
...................................................
本次開發這個平臺,收獲了很多?,都可以出一篇報錯合集的文章!
后續我會開源,感興趣的同學可以和我一起去完善這個平臺
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~都看到這了 點個贊再走hhh