寫在前面
我們剛開始做自動化測試,可能寫的程式碼都是基於原生寫的程式碼,看起來特別不美觀,而且感覺特別生硬。
來看下面一段程式碼:
具體表現如下:
- driver物件在測試類中顯示
- 定位元素的value值在測試類中顯示
- 定位元素的方式在測試類中顯示
- 執行緒方式硬等待sleep幾秒
- 程式碼一報錯,還要去測試類裡面找是哪段程式碼報錯,當代嗎行數好多時,不好定位
- 好多測試指令碼組裝批量執行後,報錯後,定位問題,很吃力
有命中的小夥伴嘛,有的話,請在文末下方留言,其他現象就不一一列舉了。
為什麼要寫框架?
從個人方面來說:
- 逼格高,讓別人感覺你好厲害,技術強
- 面試是加分項,會寫框架,可以作為談資硬性指標
- 一個組內,要是妹紙多,你可以秀技能,吸引妹紙也說不定呢
從實際方面來說:
- 好的測試框架,可以穩定性,健壯性強,可降低程式碼維護成本
- 方便定位問題,失敗定位問題會比較方便
- 可以提升測試效率,編寫指令碼成本,拿來就用,直接點方法就行
如何編寫框架
下面我們將進入大家都比較關注的話題了,這裡我只分享思路哈,跟上步伐,別掉隊哦,
看我如何四個類搞定測試框架的
其實就是體現在封裝上,先說下要封裝的部分:
- driver.findElement()
- By.xpath() ,即用什麼方式定位
- driver.get()
好了,那麼現在我們開始,部分程式碼我會附截圖,開始了
整體工程如圖:
1、日誌部分
log4j詳細配置,百度就好了,這裡不做介紹
2、資料來源設計
一般書上流行的Excel,我肯定是不用的,至於為什麼,私聊我即可,這隻提供思路,資料來源如下:
3、解析Excel類
第一個類,解析資料來源,返回元素物件
4、頁面api部分
第二個類,頁面api操作
元素和定位方式的分離
api部分截圖
5、頁面物件
第三個類
6、讀取配置檔案資訊
第四個類,獲取配置檔案資訊
7、測試類如下
8、執行效果
看上去是不是很整潔呢,還不動手試試!!