一、什么是PageObject
1、將頁面封裝成對象
2、頁面對象內封裝業務方法
3、元素定位方法和獲取數據可存放到其他配置文件
二、PageObject特點
1、優點:
a、減少自動化重復代碼,提高代碼復用性
b、合理的代碼邏輯分層,提高代碼閱讀性和可維護性
c、數據與邏輯分離,降低頻繁變動的UI元素和自動化腳本造成的干擾
2、缺點:
一次性腳本開發效率不高
三、實例分析(登錄頁面)
1、每個頁面封裝成對象
例如:登錄頁面可以設計成LoginPage 類
2、封裝具體業務方法
例如:登錄頁面的登錄方法有login(username,password)
3、不保存具體的元素定位
例如:定位用戶名和密碼框的表達方不寫在代碼里,放在外部配置文件當中
4、頁面元素屬性化
只設計到要操作的元素名稱
具體的定位方式方法不寫在代碼里
元素定位可配置化
a、配置以鍵值對形式存在
b、區分出不同的頁面
c、保存元素配置的文件形式沒有限制,可以是文本文件、EXCEL、數據庫等
四、代碼思路
1、先寫出具體的業務邏輯—比如登錄
2、再將寫好的邏輯封裝到類里面
3、繼續構造其他的頁面類
4、將這些類共同的功能抽象化父類,被其他業務類繼承
5、可以將代碼內部的具體元素抽離處理用外部的配置文件進行管理
五、Yaml 格式配置文件特點
1、YAML的數據組織主要依靠的是空白,縮進,分行等結構,可讀性好
2、YAML實現簡單,解析成本很低,和腳本語言的交互性好
3、YAML使用實現語言的數據類型
4、表達能力強,擴展性好