憋了很久阿蝶,終于要開始寫了...
高手勿噴,純小白感悟分享
感謝:各位大佬在技術(shù)上的支持
一. 先上圖柬甥,全局把控
自己理解的框架:有了框架饮六,各個模塊人員可以并行完成用例編寫,互不干預暗甥,類似輪子喜滨,輪子在哪輛車上都能用,在這兒在那兒都能用撤防,復用性強虽风,只要有Python測試基礎(chǔ),隨拿隨用寄月,隨用隨改
1)設計思路:
2個月辜膝,從最初的要啥控件元素寫啥控件元素,只知道把流程走通漾肮,到后來想到控件復用厂抖,再到最后想到頁面分層,不同層的控件分模塊寫克懊,采用繼承的方式忱辅,這樣提高了控件的復用性,不需要你用哪個頁面谭溉,再去開著UIAutomator去找墙懂,前期工作中我把所有頁面的元素全部找出來,然后封裝各頁面控件元素扮念。
1)PageObject模式:頁面分層损搬,提高復用性。
2)日志+用例+公用方法(截圖柜与、滑動巧勤、時間戳等自己寫的小工具也在內(nèi))+頁面元素定位+配置文件信息+測試報告+運行模塊+測試數(shù)據(jù)源——分模塊管理,互不影響弄匕,隨時組裝颅悉,即拿即用。
2)設計理由:
采用上述說的pageobject設計模式的好處很明顯迁匠,控件復用性大大提高了剩瓶,并且就算前端開發(fā)或者UI改了某個元素秕脓,會直接報錯,并且只需要改一處位置儒搭,在寫用例的時候吠架,只需要調(diào)用我封裝好的個頁面元素封裝好的方法,就跟看圖說話一樣搂鲫,這樣作為腳本開發(fā)人員傍药,最大限度的把精力集中在測試用例的編寫,測試場景的設計上魂仍,不用每次停下來找控件元素拐辽,你說好不好?
3)可行性分析:
自我探索發(fā)現(xiàn)+效仿前人+查閱大量資料+appium&Python基礎(chǔ)知識豐富擦酌,并且嘗試最簡模式下跑通用例俱诸,認為是可行的,對于我來完成它沒有太大難度了赊舶,優(yōu)化的部分放在二期工程或者三期工程吧睁搭。搭框架不易,理解更不易笼平,且搭且珍惜吧园骆!
二. 各模塊梳理介紹
1. 配置文件信息
用途:存儲截圖路徑、日志路徑寓调、日志名锌唾、連接信息
代碼截圖:
① 連接信息
② 日志名、截圖路徑夺英、日志路徑
③ 加入了讀取配置文件信息的方法晌涕,利用系統(tǒng)自帶的configparser模塊進行改寫
讀取方式為:傳入config(配置文件)中的path_Section【標簽名】和path_No【字段名】,用于獲取對應字段名對應的字段值痛悯。
值得注意的是:這里把配置文件的路徑做成了獲取系統(tǒng)路徑+當前路徑拼接的方式(好處:相較于直接寫絕對路徑余黎,當你更換了計算機,在別的pc上面運行時灸蟆,不需要再次改路徑名)
2. data測試數(shù)據(jù)模塊
目的:用于存放測試數(shù)據(jù)
值得注意的是:如果要介入xls格式的excel文件來存儲信息并讀取驯耻,需要安裝xlrd模塊亲族,自行百度Python相關(guān)模塊