日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

移动测试架构演进 | 蚂蚁金服自动化用例管理探索

發布時間:2023/12/15 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 移动测试架构演进 | 蚂蚁金服自动化用例管理探索 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者:周力(問瑾),螞蟻金服技術專家。本文圍繞支付寶面向移動應用日志復雜的測試工作,如何思考演進出成熟穩定的測試用例管理展開討論和總結。

相比普通測試用例,自動化用例在形式、實現方式及內容上有一定的特殊性;同時自動化用例管理作為移動測試平臺的一個重要組成部分,如何對其進行有效管理是平臺面臨的一個重大挑戰。

活動推薦:5 月 18 日 mPaaS 線下沙龍 CodeDay#2 北京站,《高可用、全集成、定制化,螞蟻金服如何持續演進自動化測試》將帶領大家進一步了解支付寶如何從開源的自動化方案,到自研并逐步完善無線實驗集群技術體系。立即免費報名。

背景

隨著移動應用市場的蓬勃發展,移動應用在包括金融、電商、社交等多個行業領域獲得了深度演進和創新。隨之而來的,針對移動應用的測試工作變得日益復雜,需要覆蓋各個操作系統和平臺,應對多樣的業務場景以及網絡環境,并圍繞應用的性能、功能、可用性等維度展開。

經過多年的發展,螞蟻金服沉淀了包括自動化測試框架、測試用例管理、真機調度管理等一系列完善的移動應用測試體系和工具。其中測試用例管理這個概念對我們研發的小伙伴再熟悉不過:用例編寫同學以業務的緯度將用例的基本信息組織起來,并通過用例管理平臺將其按照類型、版本、場景等緯度歸檔,從而完成用例的有效管理。然而,相比普通測試用例,自動化用例在形式、實現方式及內容上有一定的特殊性;同時自動化用例管理作為移動測試平臺的一個重要組成部分,如何對其進行有效管理是平臺面臨的一個重大挑戰。

本文以mPaaS 移動測試平臺自動化用例管理為切入點,分析自動化用例管理過程中一些常見問題,并結合自身能力,實現了一套方便的自動化用例管理方式。 希望能夠給廣大開發者用戶在自動化用例管理提供一些幫助, 通過閱讀本文能夠達到以下幾點:

  • 了解移動測試平臺自動化用例管理的基本原理。
  • 對于 mPaaS 用戶,能夠完成用例的快速集成,包括用例錄入、用例集合管理及通過用例集合去構建一個自動化任務
  • 對于廣大開發者來說,能夠根據自己的技術棧特點,快速搭建一套自動化用例管理系統。

目標與挑戰

從個人的角度來看,做好自動化用例管理的工作需要滿足兩個方面:

對于用戶來說, 只需要關心業務用例的編寫、按照業務規則構建一個用例集,以及觸發自動化測試任務。 對于平臺來說,為了保證自動化用例的有效管理,需要完成以下幾個目標:

  • 數據一致性的能力:用戶自動化用例信息能夠精確反映在平臺上,包括增刪改查。
  • 方便快速的用例聚合能力:用戶能夠根據業務要求,快速構建匹配的用例集。
  • 可擴展性及平臺在運行時的支撐能力。
  • 簡單可用的用例版本管理能力。
  • 圖 1 平臺與用例編寫者關系

    當然為了達到上面的目標,有幾個問題平臺需要去考慮和解決:

  • 用例唯一性確認:作為一個自動化測試平臺,如何區分不同用戶提交的自動化測試用例?
  • 用戶“零散”的用例如何快速的組織在一起,并且能夠在任務的運行態得以支持?
  • UI 自動化用例往往與運行環境有著密切的關系(如網絡環境),如何把這些運行時的特性體現在用例的設計里,保證用戶擴展條件得以滿足?
  • 伴隨著 App 版本的不斷迭代,如何管理好不同版本測試用例?
  • 如何應對

    面對種種挑戰,平臺首要做的事情就是明確用例編寫者和平臺的職責劃分:我們通過一個簡單的用例編寫規范來構建起兩者之間的橋梁。

    圖 2 用例規范的作用

    圖 3 用例規范的范圍

    其次,需要明確一條自動戶用例代表什么,對于平臺和用戶,它的意義是有差別的:

    • 對于用例編寫同學來說就是一個方法或著類一個類,如:
    • 對于平臺來說就是一個執行命令,如: 在明確這兩個前提后,自動化用例管理的問題就有了具體的切入點。

    【一致性確認】

    首先,為了區分測試同學編寫的用例,平臺推薦使用 git 去管理測試代碼,這樣用例天然就被隔離開;同時為了在同一個倉庫中支持不同的版本, 也參考 git 的分支和 tag 的管理方式來做區分;最終一條用例的確認關系就由:倉庫+分支+方法的方式來確定:

    圖 4 用例的唯一性確認

    其次,平臺為了快速識別倉庫中的有效用例,在 Java 層提供用于生成用例描述的注解,幫助用例編寫同學快速生成用例描述文件。

    圖 5 用例注解描述

    在注解的幫助下,工程就能方便在 pom 同級目錄下生成平臺可識別的用例描述文件(caseList.cfg)。

    圖 6 用例描述信息

    至此,用例編寫同學已經完成了編寫用例的全部同作。對于平臺來說,用戶只需要告訴用例的倉庫地址和分支,就能夠完成用例的導入工作。

    圖 7 用例導入操作

    圖 8 導入成功用例

    【用例的聚合】

    當用戶完成用例編寫之后,往往需要把自己業務線用例聚合成一個用例集去執行;另外,對于一些特定的場景(如產品回歸測試),需要把各個業務線的用例匯總在一起,構建成一個更大的集合。為了方便用戶操作,平臺提出了“項目”的概念, 項目可以在內容上包含一批用例方法,也可以包含多個倉庫地址。

    圖 9 按照用例聚合項目

    圖 10 按倉庫及分支聚合

    相對于用例的聚合方式, 按照倉庫聚合的方式更加靈活: 用戶一旦將項目和倉庫綁定,只需要在倉庫中維護用例, 平臺在運行任務的時候,會自動識別有效用例,進而減少平臺的維護工作。

    圖 11 倉庫項目任務執行流程

    【運行時特性】

    移動測試平臺 MTP 用例運行都是基于真機環境。除了在任務執行的過程中能夠手動去選擇不同平臺、型號、不同網絡的設備;對于那些對網絡運行環境有特殊要求的用例(特別在5G時代馬上到來時刻),平臺在屬性上天然支持網絡實驗室選項(如 4G 實驗室、5G實驗室、弱網實驗室)。這樣當用例在平臺執行的過程中,平臺會自動取篩選執行不同實驗室的真機。

    圖 12 執行層根據用例擴展信息動態調整實驗室

    【版本管理】

    UI 自動化測試有一定的特殊性,即用例本身的可靠性以來于 UI 的變化,特別在大的迭代之間,很難做到一份代碼來兼容兩套不同的 UI。為了達到版本管理的功能,平臺利用測試代碼倉庫的分支和項目來完成版本管理。

    圖 13 用例的版本管理

    價值輸出

    通過采用以上幾種策略,移動測試平臺在螞蟻內部能夠給用戶提供可靠穩定的服務:

    • 在用例一致性上,目前移動測試平臺支持整個螞蟻和集阿里團用例的錄入工作,保證研發同學能夠相互獨立開發用例, 目前平臺接入用例倉庫地址 370+, 有效用例數 20000+。
    • 在用例聚合方面, 目前移動測試平臺上已經構建出 500+ 項目,這些項目服務于各式各樣的場景,如 App 日常迭代驗包、持續集成、各個業務線功能測試、小程序準入等, 并能夠保證日平均任務數在 5000+ 以上。
    • 在任務運行時的落地,目前移動測試平臺已經支撐了各種專有實驗室設備, 如 4G 網絡實驗室、弱網實驗室,及掃碼實驗室等。 在版本控制方面,通過倉庫分支的管理方式, 目前移動測試平臺已經支撐錢包從 9.0 到 10.1 30+ 次迭代的發版,并很好的隔離的不同迭代間用例的差異。

    在基于全自動化測試需求所構建的技術架構支撐下,開發團隊有能力在 App 上線前完成充分的測試,及時發現 bug, 全面提升整體用戶體驗。其中涉及到的“自動化測試框架”、“真機調度管理”、“場景化測試方案”目前在移動開發平臺 mPaaS 中已對外輸出。

    | 活動推薦

    想要進一步了解支付寶應對復雜的業務場景,如何構建無線實驗集群,并貼合業務需求進行深度演練與支持?從開源的自動化方案,到自研并逐步完善無線實驗集群技術體系,支付寶內部經歷了怎樣的業務場景演練,以及相應的技術架構得到了怎樣的改造與升級?

    立即掃碼報名 5 月 18 日 mPaaS 自辦沙龍第二期 CodeDay#2 北京站:

    往期閱讀

    《開篇 | 螞蟻金服 mPaaS 服務端核心組件體系概述》

    《螞蟻金服 mPaaS 服務端核心組件體系概述:移動 API 網關 MGS》

    《螞蟻金服 mPaaS 服務端核心組件:億級并發下的移動端到端網絡接入架構解析》

    《mPaaS 服務端核心組件:消息推送 MPS 架構及流程設計》

    《mPaaS 核心組件:支付寶如何為移動端產品構建輿情分析體系?》

    《mPaaS 服務端核心組件:移動分析服務 MAS 架構解析》

    關注我們公眾號,獲得第一手 mPaaS 技術實踐干貨

    釘釘群:通過釘釘搜索群號“23124039”

    期待你的加入~

    總結

    以上是生活随笔為你收集整理的移动测试架构演进 | 蚂蚁金服自动化用例管理探索的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。