五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

實戰(zhàn) | UI 自動化測試框架設計與 PageObject 改造

2022-10-28 09:54 作者:愛測軟件測試  | 我要投稿


在 UI 自動化測試過程中,面對復雜的業(yè)務場景,經(jīng)常會遇到這樣的挑戰(zhàn):

  • 簡單的錄制/回放速度快,但無法適應復雜場景;

  • 編寫自動化測試腳本比較靈活,但工作量大且可維護性差;

  • 以往的封裝技術(PageObject)可以適應各種 UI 場景,但結構松散,無法在多項目中遷移;
    因此,測試團隊通常還需要一種定制測試框架,用以彌補現(xiàn)有框架的缺點。
    由于 UI 自動化測試框架圍繞 UI 界面使用,因此,依舊選用 PageObject 設計模式對 UI 及測試進行封裝,同時配合 Pytest 單元測試將腳本能夠有效的組織、連貫應用起來,從而提高框架的可維護性和可讀性。
    由于測試框架基于 PageObject 設計模式,主要方向為 PO 改進,數(shù)據(jù)驅動,異常處理等,比如:

  • 測試數(shù)據(jù)的數(shù)據(jù)驅動:將數(shù)據(jù)存儲到外部 yaml 文件中,利用 yaml 工具進行數(shù)據(jù)讀??;

  • 數(shù)據(jù)步驟的數(shù)據(jù)驅動:將操作步驟放到外部 yaml 文件中,利用 yaml 工具對操作步驟進行讀取,用專門函數(shù)解析并實現(xiàn)操作步驟;

  • 自動化異常處理機制:對元素查找模塊進行封裝和改進,包括如何處理彈窗;
    作為通用的 UI 測試框架, PageObjet 不僅適用于 Web 自動化測試,也可適用 Appium 移動自動化測試,其優(yōu)點如下:

  • 減少代碼重復

  • 提高測試用例可讀性

  • 提高測試用例可維護性


本案例將對雪球 App 進行 Page Objetct 封裝與改進。
當啟動雪球 App 時,會進入首頁。點擊搜索框進入搜索頁,搜索某支股票然后判斷股價是否大于 200:


PageObjetct 的模塊關系如下,所有的模塊要繼承 BasePage , App 實現(xiàn)啟動,重啟,停止等操作, Main 實現(xiàn)進入搜索頁,進入股票頁等操作:


base_page 模塊是所有 page 類的父類,其中定義了公共方法,比如封裝下面的 find 方法后,可以讓子類調用 find :
App 模塊封裝 app 的啟動,重啟,停止等方法,當 app 啟動時會進入 main 頁面,因此在下面的 main 方法要 return Main ,Main 類的定義在后面會講解:
Main 模塊是首頁的 PageObject ,其中的方法封裝了首頁的重要功能,比如下面代碼中的 goto_search_page 封裝了點擊搜索并跳轉到 Search 頁:
Search 模塊可以搜索一支股票,還可以獲取股票的價格,比如下圖:


封裝代碼如下:
最后對上述代碼建立測試,新建測試模塊 test_search :

以上,供大家參考,歡迎一起留言探討。

相關文章

  • UI 自動化測試應不應該投入?有沒有前途?怎樣做最明智?

  • 實戰(zhàn) | UI 調度自動化測試平臺(基于 Python)

  • Page Object 模式很火,UI 自動化測試到底要不要用?怎么用?

  • PageObject(PO)設計模式在 UI 自動化中的實踐總結(以 QQ 郵箱登陸為例)


實戰(zhàn) | UI 自動化測試框架設計與 PageObject 改造的評論 (共 條)

分享到微博請遵守國家法律
仲巴县| 望谟县| 宽城| 盱眙县| 葵青区| 江达县| 茂名市| 宁远县| 若羌县| 东海县| 临沭县| 临桂县| 呈贡县| 贡觉县| 蕉岭县| 黔西县| 石屏县| 拉萨市| 赞皇县| 岢岚县| 泽州县| 深州市| 顺平县| 康平县| 凌源市| 东光县| 澳门| 湖南省| 宁城县| 海伦市| 青浦区| 临江市| 汽车| 酒泉市| 双流县| 黄冈市| 福州市| 彰化县| 涟源市| 乳山市| 措勤县|