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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

蚂蚁金服终端实验室演进之路

發(fā)布時間:2024/8/23 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 蚂蚁金服终端实验室演进之路 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

0. 背景

作為國民級 App,支付寶客戶端需要為億級用戶提供多元化的服務(wù),因此應(yīng)用的穩(wěn)定性與可靠性面臨巨大的挑戰(zhàn),需要不斷地完善和優(yōu)化。

今天,讓我們站在服務(wù)質(zhì)量的全方位監(jiān)控與優(yōu)化的角度,從螞蟻終端實(shí)驗(yàn)室的演進(jìn)之路展開探討,從借助使用開源的自動化方案,到自研并逐步完善無線實(shí)驗(yàn)集群技術(shù)體系,支付寶內(nèi)部經(jīng)歷了怎樣的業(yè)務(wù)場景演練,以及相應(yīng)的技術(shù)架構(gòu)如何借助移動開發(fā)平臺 mPaaS 對外輸出。

1. 發(fā)展歷程

總的來說, 螞蟻終端實(shí)驗(yàn)室從誕生到現(xiàn)在,一共經(jīng)歷過三個階段(工具化、服務(wù)化以及中臺化),其每個階段都有特點(diǎn)和意義:

  • 工具化階段

該階段主要以使用市面上主流開源軟件為主,如客戶端開源軟件 Appium, 其覆蓋的端為 Android 和 iOS;通過這種開源工具和 App 測試流程結(jié)合的方式,快速滿足業(yè)務(wù)方的提測需求,從而幫助業(yè)務(wù)方完成一般意義上的自動化測試工作(如基本的功能測試、兼容性測試等)。

  • 服務(wù)化階段

服務(wù)化階段存在一個重要的背景:支付寶著手前后端研發(fā)流程分離,并逐步沉淀出獨(dú)立的 App 端研發(fā)流程系統(tǒng)(研發(fā)協(xié)作流程與 App 構(gòu)建流程)。在獨(dú)立的 App 研發(fā)流程和系統(tǒng)的基礎(chǔ)上,終端實(shí)驗(yàn)室以一種服務(wù)化的形式支撐 App 的研發(fā)和協(xié)作, 處理滿足日常用戶自動化工作外,同時還擔(dān)當(dāng)著持續(xù)集成、日常發(fā)布前自動驗(yàn)包工作等; 另外在日常發(fā)布發(fā)布提供質(zhì)量數(shù)據(jù)支持,如客戶端代碼覆蓋率統(tǒng)計等。

  • 中臺化階段

伴隨著終端實(shí)驗(yàn)室的能力不斷提升優(yōu)化以及測試規(guī)模的逐步擴(kuò)大,服務(wù)上不僅需要滿足螞蟻金服體系 App(支付寶、口碑、網(wǎng)商銀行等)日常測試需求,而且還需要將能力擴(kuò)散覆蓋到整個阿里巴巴集團(tuán)的業(yè)務(wù)。

隨之而來的是實(shí)驗(yàn)室需要面臨多樣化的業(yè)務(wù)方需求和定制化功能,如何在多元復(fù)雜的業(yè)務(wù)環(huán)境中,與業(yè)務(wù)方或者說上游系統(tǒng)完成能力共建?帶著這個問題,終端實(shí)驗(yàn)室逐步沉淀并著手建設(shè)中臺化平臺:一方面讓通用服務(wù)不斷下沉,另一方面抽象出標(biāo)準(zhǔn) SDK 的方式,讓業(yè)務(wù)方根據(jù)自身業(yè)務(wù)特點(diǎn)建設(shè)特定的能力。

此外,在建設(shè)平臺化的同時,終端實(shí)驗(yàn)室貼合支付寶業(yè)務(wù)場景的發(fā)展,構(gòu)建如網(wǎng)絡(luò)實(shí)驗(yàn)室、掃碼實(shí)驗(yàn)室等一系列真實(shí)實(shí)驗(yàn)室的能力。

經(jīng)歷了幾年的不斷發(fā)展,終端實(shí)驗(yàn)室逐步完成了中臺化的轉(zhuǎn)變,其端上覆蓋了 Android、iOS 以及 IoT 設(shè)備,服務(wù)上覆蓋了通用能力、小程序準(zhǔn)入、研發(fā)流程建設(shè)、真機(jī)租用以及用例管控等。

2. 技術(shù)生態(tài)

在了解完終端實(shí)驗(yàn)室的歷程之后,我們能夠?qū)ζ涮峁┑姆?wù)有一個全面的認(rèn)識。當(dāng)我們?nèi)タ偨Y(jié)和分析這些服務(wù)時,可以把這些具體能力分為三大塊:平臺服務(wù)能力、客戶端SDK 以及 實(shí)驗(yàn)室能力。

  • 平臺服務(wù)能力

平臺服務(wù)能力的目標(biāo)是聚焦“如何把螞蟻實(shí)驗(yàn)室構(gòu)建成一個更為開放的平臺”,因此我們需要考慮到如何讓更多的業(yè)務(wù)方和上游系統(tǒng)一起參與能力共建,從而將平臺的建設(shè)思路分為 2 大部分:設(shè)備實(shí)驗(yàn)集群和開放SDK。

1. 設(shè)備集群

螞蟻實(shí)驗(yàn)室不僅包含數(shù)以千計的公用終端設(shè)備,覆蓋市面絕大多數(shù)手機(jī)終端,幫助業(yè)務(wù)同學(xué)完成日常自動化測試工作,而且提供了用戶自建實(shí)驗(yàn)室的方式:用戶只需要根據(jù)自身業(yè)務(wù)場景特性進(jìn)行設(shè)備采購、實(shí)驗(yàn)室部署,便具備在自有平臺上運(yùn)行自有設(shè)備的能力。

從平臺的開放性與部署動態(tài)化角度看,目前設(shè)備集群能保證設(shè)備歸屬和業(yè)務(wù)場景做到充分隔離,保證各業(yè)務(wù)在平臺使用上能相互獨(dú)立。另外,面對阿里巴巴集團(tuán)眾多研發(fā)中心,設(shè)備集群在部署上也支持多地部署、相互隔離。

2. 開放SDK

為了給上游系統(tǒng)和用戶提供更為開放的能力,幫助業(yè)務(wù)方根據(jù)自身需求完成能力建設(shè)。終端實(shí)驗(yàn)室提供開放的 SDK 能力:上游系統(tǒng)只需在自己服務(wù)上接入 SDK,就能夠完成任務(wù)構(gòu)建鏈路,從用例管理、設(shè)備選擇、任務(wù)執(zhí)行,到執(zhí)行結(jié)果回調(diào),在此基礎(chǔ)上用戶就能夠根據(jù)自身業(yè)務(wù)特點(diǎn)將業(yè)務(wù)數(shù)據(jù)進(jìn)行多維度組合,形成自己的能力輸出。

  • 客戶端 SDK

終端實(shí)驗(yàn)室經(jīng)過幾個階段的發(fā)展,不僅提供 UI 自動化框架能力,而且在一些復(fù)雜場景做了深入研究和落地的工作。在這里我們以令大家頭痛的“App 兼容性驗(yàn)證”作為切入點(diǎn),結(jié)合目前常用的幾種機(jī)器學(xué)習(xí)方案,分析方案的優(yōu)缺點(diǎn),最終形成了終端實(shí)驗(yàn)室的解決方案。

一方面伴隨著移動互聯(lián)網(wǎng)的快速發(fā)展,目前市面上手機(jī)的品牌和型號層出不窮,如何快速準(zhǔn)確的驗(yàn)證 App 的功能在不同類型手機(jī)上運(yùn)行有效性與穩(wěn)定性,的確是件困難的事情;另一方面,目前針對圖片的機(jī)器學(xué)習(xí)技術(shù)日益成熟,其圖識別的準(zhǔn)確性也完全能夠滿足日常兼容性的要求。

通常來說兼容性測試會采用兩種方式:1.圖像相似度計算2. 無監(jiān)督的異常點(diǎn)聚類。 這兩種方式在使用方式和結(jié)果輸出都有其優(yōu)缺點(diǎn):

  • 對于“圖像相似度計算”來說,其異常圖片的識別成功率非常高,但其前提條件比較苛刻:用戶需要對每一版 App 以及每一個業(yè)務(wù)點(diǎn)進(jìn)行圖片搜集和上傳,而往往每條用例可能會包含少則幾張圖片多則十幾張圖片,對于幾百、甚至幾千條測試用例來說,就算是一版 App 的期望圖片搜集工作都是巨大的,何況目前移動互聯(lián)網(wǎng)普遍都是快速迭代發(fā)布,所以導(dǎo)致了這種預(yù)先處理圖片的方式是不太可行的,下圖是一般意義以圖搜圖的數(shù)據(jù)流:

  • 另一種常用的方案是直接將同一業(yè)務(wù)場景下不同手機(jī)的一組截圖交給無監(jiān)督的異常點(diǎn)聚類算法處理,這種方案的優(yōu)點(diǎn)比較明顯:對于用戶和平臺來說,沒有增加的額外的工作量,操作簡單,但帶來的問題是,計算出來的結(jié)果并不完全可信,特別是在一些極端情況下(如某一類異常圖片總數(shù)較多的情況),少數(shù)正常的圖片反而會被識別成異常圖片,告知給業(yè)務(wù)方。

對比以上兩種技術(shù)方案,終端實(shí)驗(yàn)室在兼容性異常圖片發(fā)現(xiàn)上采用了更加靈活的方案,通過手機(jī)端“異常目標(biāo)檢測”和服務(wù)端“異常點(diǎn)聚類”相結(jié)合的方式完成目標(biāo)。

首先,平臺搜集常見異常圖片,并訓(xùn)練成模型,植入手機(jī)端。

其次,當(dāng)用戶執(zhí)行兼容性測試的時候,在手機(jī)端完成一部分“常見異常圖片”的發(fā)現(xiàn)工作。

再次,當(dāng)任務(wù)執(zhí)行完后,服務(wù)端將剩下一部分圖片交給““異常點(diǎn)聚類”處理,并進(jìn)一步是被不同的圖片。

最后,在整個執(zhí)行任務(wù)結(jié)束后,平臺就能有效識別異常圖片,另外當(dāng)異常圖片未被有效識別的情況下,又可以在平臺上快速提交異常圖片,并交給算法邏輯繼續(xù)學(xué)習(xí),形成新的模型,從而在下一次任務(wù)執(zhí)行過程中,就能把這種新發(fā)現(xiàn)的異常捕獲住。

通過這種靈活的方案,一方面大大提升了異常圖片檢測結(jié)果的準(zhǔn)確度,另一方面在整個異常圖片的發(fā)現(xiàn)上形成了閉環(huán),大大提升的兼容性測試的效能。

  • 實(shí)驗(yàn)室能力

為了應(yīng)對日益復(fù)雜的用戶使用環(huán)境和不穩(wěn)定的運(yùn)行環(huán)境,終端實(shí)驗(yàn)室不斷去構(gòu)建各種專項(xiàng)實(shí)驗(yàn)室,盡可能在實(shí)驗(yàn)室環(huán)境里就把問題發(fā)現(xiàn)并推動研發(fā)流程去解決。同時伴隨著 IoT 時代的到來,面對種類繁多的終端設(shè)備,如何能夠通過實(shí)驗(yàn)技術(shù)的手段幫助研發(fā)同學(xué)提升效能,是一個新問題也是一個比較有挑戰(zhàn)的問題:終端實(shí)驗(yàn)室通過托管 IoT 設(shè)備的方式,讓用戶快速方便尋找設(shè)備,并進(jìn)行功能驗(yàn)證。具體技術(shù)方案是在原有的 Android/iOS 真機(jī)租用方案的基礎(chǔ)上做了能力升級。

第一, 將終端實(shí)驗(yàn)室上某一款手機(jī)和 IoT 設(shè)備做關(guān)聯(lián),保證當(dāng)瀏覽器通過 WS 遠(yuǎn)程操作手機(jī)打開攝像頭就能夠看到對應(yīng)的 IoT 設(shè)備;

第二,通過 WS 讀取 IoT 串口的 trace 信息,并將數(shù)據(jù)以 WS 的形式推送到用戶瀏覽器端;

第三,在宿主機(jī)上集成 IoT 設(shè)備操作的 SDK,保證宿主機(jī)能夠通過命令行或者 HTTP 方式操控 IoT 設(shè)備;

第四,宿主機(jī)集成語音轉(zhuǎn)文字 SDK,這樣當(dāng) IoT 設(shè)備發(fā)出聲音時,就能夠在頁面上以文字的方式告訴用例。

通過這種遠(yuǎn)程 IoT 租用的方式,用戶就能夠快速做作一臺遠(yuǎn)程設(shè)備,另外在給 IoT 設(shè)備發(fā)送指令的同時,可以看到設(shè)備的相應(yīng)信息(視覺展示、聲音展示以及實(shí)時日志信息),從而達(dá)到快速驗(yàn)證的目的。

  • 機(jī)械臂掃碼測試:

  • 智能機(jī)柜支持真機(jī)云測

3. 借助 mPaaS 對外輸出

以上介紹的螞蟻金服終端實(shí)驗(yàn)室相應(yīng)能力的構(gòu)建與實(shí)踐,目前已經(jīng)通過移動開發(fā)平臺 mPaaS 對外輸出一部分能力。

在 mPaaS 平臺上,我們將自動化測試框架,真機(jī)調(diào)度管理,場景化測試方案以及詳盡的測試報告方案整合外部客戶的現(xiàn)有業(yè)務(wù)場景和系統(tǒng),從而覆蓋 App 開發(fā)期的各個階段,確保應(yīng)用上線前獲取充分測試,發(fā)現(xiàn) bug,減少線上問題,提高整體用戶體驗(yàn)。

目前,終端實(shí)驗(yàn)室不僅對內(nèi)服務(wù)了包括螞蟻金服體系下的支付寶 App、網(wǎng)商銀行、口碑商家等,同時借助 mPaaS 與大量生態(tài)合作伙伴一同共建能力,包括常熟農(nóng)商行、西安銀行、泰隆銀行等。由于篇幅限制,很多技術(shù)要點(diǎn)我們無法一一展開,歡迎大家通過技術(shù)文檔或點(diǎn)擊“閱讀原文”進(jìn)一步了解 mPaaS :https://tech.antfin.com/docs/2/49549

| 活動推薦:MTSC 2019 測試開發(fā)大會

MTSC2019 第五屆中國移動互聯(lián)網(wǎng)測試開發(fā)會將于 6 月 28-29 日在北京國際會議中心舉行,50+ 來自 Google,BAT,TMD 等一線互聯(lián)網(wǎng)企業(yè)的測試大咖分享精彩議題,涵蓋移動自動化測試、服務(wù)端測試、質(zhì)量保障 QA、高新測試技術(shù)(AI+、大數(shù)據(jù)測試、IoT 測試)等專題。

螞蟻金服多位技術(shù)專家將在大會上分享精彩議題,解密螞蟻金服內(nèi)部移動測試 2.0+ 演進(jìn)之路、代碼實(shí)時染色系統(tǒng)如何完成代碼覆蓋率檢測等,期待與你交流。


原文鏈接
本文為云棲社區(qū)原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。

總結(jié)

以上是生活随笔為你收集整理的蚂蚁金服终端实验室演进之路的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。