Python3+Selenium Web自動化測試案例分享⑴——框架設計詳解(POM)


一、POM模型介紹

1.POM是什么?

Page Object Model (POM) 直譯為“頁面對象模型”,這種設計模式旨在為每個待測試的頁面創建一個頁面對象(class),將那些繁瑣的定位操作封裝到這個頁面對象中,只對外提供必要的操作接口。
 
2.POM模型的優點

a. 把web ui對象從測試腳本分離,業務代碼和測試腳本分離。

b. 每一個頁面對應一個頁面類,頁面的元素寫到這個頁面類中。

c. 頁面類主要包括該頁面的元素定位,和這些元素相關的業務操作代碼封裝的方法。

d. 代碼復用,從而減少測試腳本代碼量。

e. 層次清晰,同時支持多個編寫自動化腳本開發,例如每個人寫哪幾個頁面,不影響他人。

 

3.POM模型的核心要素:

a.抽象封裝一個BasePage基類,基類應該擁有一個指向webdriver實例的屬性

b.每一個Page都應該繼承BasePage,並通過driver來管理本Page的元素,且將Page才操作都封裝成一個個的方法

c. TestCase應該繼成unittest.Testcase類,並依賴相應的Page類來實現相應的test step(即測試步驟)

 

二、文件目錄

1.目錄結構圖

 

2.目錄詳解

下圖是框架中各個目錄和文件作用的簡單介紹,后面的章節會具體介紹如何封裝這些方法。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM