最近一直在複習selenium自動化測試基於python語言,此次沒有使用RF工具,而是利用函數來進行的封裝。python
首先對系統分層,分爲三個層次。框架
第一:函數層,把有重複的步驟都封裝成一個函數。例如:登陸等。函數
這一層都放基礎封裝的函數。工具
第二,業務層,這一次主要是調用函數層中的函數,來實現業務步驟,學習
調用多個函數來實現一個業務步驟。基本上這一層屬於用例層了。測試
第三,利用unittest框架,來組織運行業務層中的多個用例。spa
能夠定義爲流程層了。在這一層中能夠利用unittest框架中的斷言方法。文檔
其實每一層均可以利用python語言來實現判斷。編譯器
剩下要作的就是把業務層中的數據剝離出來,記錄在文檔中,之後直接修改文檔中的數據來運行自動化用例。selenium
後面還有報告,發郵件等,還有GIT,JENKINS等相關知識點。
後續還增強複習一下JS的相關知識,以解決元素定位不到的狀況。
跟之前的RF工具作自動化來比較,感受UNITTEST更靈活,速度上也有優點,主要由於CSS定位比較快。
分層與封裝思想同樣,難點在於函數這一塊的學習。(其實好像也沒有什麼難度,主要是PYTHON語言的掌握程度,影響了代碼的靈活性)
還有代碼的分層與管理,隨着用例愈來愈多,很容易混亂,因此必定要管理好,放在不一樣的PACKAGE下,方便本身尋找,修改。我用的PYCHARM編譯器。
從這一個角度來講,沒有RF管理的好,畢竟RF工具一方便全是中文,另外一方便,自動幫咱們管理咱們的用例,很方便。
在函數封裝的過程當中,必定要注意參數的個數,靈活使用可變參數,會爲本身節約不少時間,減小代碼量。
考慮問題多考慮一下,避免留下漏洞。多考慮幾種狀況。