《2019年阿里媽媽智能質量中臺建設.pdf》由會員分享,可在線閱讀,更多相關《2019年阿里媽媽智能質量中臺建設.pdf(52頁珍藏版)》請在三個皮匠報告上搜索。
1、阿里媽媽智能質量中臺建設目 錄C O N T E N T S02技術背景及測試挑戰測試終局的思考0304阿里媽媽智能質量中臺的思考與設計智能質量中臺的落地0506基于質量中臺的持續交付01業務背景07測試技術體系的演進業務背景Part.01最早的廣告刊登廣告廣告代理公司在線廣告廣告發展趨勢客戶端平臺直通車定向品牌數據反作弊預估引擎平臺訓練引擎解決方案Java應用結算聯盟中間件算法千億pv百萬級別qps千億現金流40+核心應用679需求上線,1100+次應用發布1:4:6測試:工程:算法技術背景與測試挑戰Part.02廣告引擎的特點1.海量數據計算與極短RT的約束2.廣告千人千面的特性帶來系統可
2、解釋性難題3.系統快速迭代中質量和效率的平衡4.測試復雜度高技術背景與測試挑戰問速反饋極致追求實時數據鏈路個性化商業場景超大規模在線系統引擎系統對性能極高要求帶來的挑戰引擎在線實時系統對穩定性極高要求帶來的挑戰復雜業務場景和邏輯縱深的挑戰高頻迭代發布的挑戰收入敏感系統結合個性化業務的問題debug的挑戰工程算法平臺對質量和效率的挑戰千級別+線上發布性能極致追求工程和算法結合AI的演進:超大規模引擎工程系統和深度學習模型測試挑戰大規模分布式加海量數據的C+引擎系統的挑戰大量算法策略帶來的結果不確定性的挑戰測試終局的思考Part.03關于測試終極追求的定義對質量和效率的定義:質量:數學角度就是系統
3、輸出的表現方差少(2016年)效率:Code 速率提升和反饋回路時間減少(2017年)代碼速率:f(代碼速率)=f(線下測試速率)+f(發布速率)+f(線上冒煙速率)代碼速率=一行代碼從開發到交付到線上的速率線下測試速率=一個case從編寫到可運行的速率發布速率=一次變更發布到生產的速度線上冒煙速率=一次冒煙執行的速度測試效力=線下測試+線上冒煙測試的速率什么是質量、什么是效率,怎么定義?極致質量和效率的追求?關于終局的思考“極致”左移規模越來越大的工程系統和算法模型業務場景愈發多樣和復雜快速迭代對研發效率的強訴求“極致”右移三個業務發展終局下測試的終局?線下測試場景和線上業務場景始終是有GA
4、P的Case編寫和維護成本高線下測試線上測試測試活動終局終局極致質量和效率的追求阿里媽媽智能質量中臺的思考與設計Part.04“人、智能化工具的高度結合從而推高阿里媽媽研發效能的天花板”基于質量效率思考推到出的質量中臺演進短低長高冒煙測試對業務覆蓋率Feedback Loop Time穩定性目標效力短板質量效率線上測試問題debug聯調測試數據測試功能測試性能測試短低長高冒煙測試對業務覆蓋率Feedback Loop Time線上測試問題debug聯調測試數據測試功能測試性能測試平臺能力建設基于質量能力中臺定義并實現一種高置信度、快速、低成本的代碼發布生產關系12341234 重新定義冒煙測試
5、 依托于問題debug質量閉環極致效率追求的測試平臺無人值守的性能測試無人值守的發布驗證智能質量中臺測試的基礎設施業務測試PTM質量中臺+-研發效率解決方案研發效率數據化平臺MarkovACP玄武華佗昆侖鏡UT功能A/B性能A/B單模塊測試聯調測試預發聯調穩定性測試線上測試線上debug線上監控git測試域發布&運維&測試右移研發域&測試左移代碼管理C-popOOPSTesla黃金眼/alimonitorAonegitOrcArsenal鏡像管理部署發布提測管理算法實驗監控報警問題管理構建提測發布A/B test監控問題管理智能質量中臺大促保障工作臺實驗平臺攻防演練平臺預案平臺1.可編排、服務
6、化的代碼生產質量流水線2.質量文化建設基石3.重塑新的研發生產關系智能質量中臺的落地Part.05智能功能測試平臺Markov智能線上測試平臺玄武無人值守的智能壓測平臺ACP智能診斷平臺線上巡檢線下測試的演進?關于功能測試的思考方向想測即測極致的case編寫的用戶體驗測試想法的快速映射為Case高效的用例管理高效的測試環境管理極致的運行效率極致左移對測試效率的極致追求訴求:測試產品Markov測試平臺 多視角極致左移測試體系體系設計:拋棄傳統模式,把功能測試、對比測試、性能測試左移到提測前 打破線上線下環境壁壘,把線上請求,數據,生產環境左移到發布前 功能、對比、性能、UT核心能力服務化 通過
7、可視化,pipeLine屏蔽研發流程復雜性核心價值:代碼、應用、業務等多個視角衡量質量 最大程度保證功能測試覆蓋度,逼近100%最大程度保證功能測試結果準確性UT功能對比性能真實數據真實環境提測發布聯調5天UT功能對比性能真實數據真實環境提測發布聯調1天4小時 提測已經逼近可上線狀態智能功能測試平臺Markov定位:1.測試效率的極致追求;2.線下測試的基礎設施;3.基于測試能力服務化的質量生產關系重構?;A平臺核心能力執行管理插件管理數據推薦環境管理數據管理UT功能測試對比測試性能測試環境管理可視化推薦用例管理質量評估RESTHSF調試環境智能交互代碼質量評估功能無diff性能無diff極簡
8、開發UTBVT專注業務CLI&可視化環境管理用例編寫可視化標準&開放組件庫用例運行自動編排組件化用例自動生成用例推薦智能化可視化&協同開發質量數據UT/測試覆蓋率可衡量測試準入發布準入-OOPS自動化可編排PipeLine可編排測試模板標準化自動化&REST測試服務化開發者模式研發流程自動化用戶:開發/算法1.極簡開發模式,屏蔽研發流程復雜性,讓用戶專注業務代碼開發2.測試極致左移,提高代碼質量用戶:測試/開發1.標準化、可編排引擎功能測試模板2.可視化用例編寫,智能數據推薦3.穩定快速的環境部署能力用戶:測試/質量運營1.快速/穩定/全流程質量保證2.提供測試準入3.提供發布準入平臺Feat
9、ure功能測試的極致效率提升智能回歸用例智能推薦用例膨脹數據智能推薦線上流量回流技術基于docker的分布式環境管理能力 測試環境docker化統一維護,測試環境10分鐘以內構建完成。極致左移的CI技術 一鍵觸發UT/功能回歸/功能對比/性能對比全流程測試服務 原生的研發工作習慣Markov主要Feature訴求創新技術快速寫case用例膨脹用例智能推薦數據智能推薦智能冒煙回流技術快速跑case智能回歸技術提高覆蓋率功能A/B test快速做性能性能A/B test快速觸發CLI觸發技術快速搭建環境環境管理創新技術簡介 用例智能推薦框架層面的優化規范了自動化case流程提供了一定的業務封裝li
10、b面向用戶的case編寫升級可視化編寫用例智能推薦用例膨脹測試數據智能推薦線上回流生產用例用例膨脹智能推薦用例膨脹智能推薦要點:case級別推薦的基礎上,更細粒度,更精準的測試數據推薦,case編寫效率的進一步極致演進。推薦策略:模版推薦最長匹配推薦混合推薦創新技術簡介 數據智能推薦創新技術簡介 智能回歸:用例動態編排算法 傳統模式采用case總數與環境數進行平均的分配方式 智能回歸模式:基于case運行時長數據動態分配Step 2:在多環境回歸場景下Step 1:在單環境回歸場景下 傳統模式case by case的順序執行 智能回歸模式基于用例動態編排算法的執行方式。創新技術簡介 智能回歸
11、:反饋閉環創新技術簡介 功能+性能 A/B Test目標:追求代碼到性能驗證的最短時效反饋目標:追求代碼到功能驗證的最短時效反饋創新技術簡介 原生CLI觸發技術目標:基于git的工作方式,將測試能力服務化內嵌到原生的開發工作方式中,實現“極致”的測試左移創新技術簡介 智能冒煙回流技術傳統功能測試流程冒煙調試法線上功能測試思考線上數據基于場景的業務Query抽取用例成本測試數據編寫調試傳統冒煙測試挑戰:用例和功能點的matchAssert難度調試新的挑戰:解法:端到端的Trace業務場景建模覆蓋少智能線上測試平臺玄武MBT的冒煙測試設計關鍵思考如何全場景的端到端的冒煙覆蓋如何改變傳統基于功能ca
12、se的覆蓋率低維護成本高的冒煙冒煙測試方法論的變革以線上數據為基礎的全場景覆蓋冒煙通過字段和查詢邏輯關系抽象為引擎建模場景抽象建模線上數據Log線上數據抽取全景監控數據映射端到端的Trace端到端的Trace日志中間節點的數據透出最后一個優化點:如何不斷提高線上測試的業務場景覆蓋率?智能線上測試平臺玄武自我進化的測試技術引擎邏輯技術架構設計請求參數返回參數索引參數Tesla定義業務邏輯圖譜功能描述邏輯細節字段映射驗證分層單點邏輯驗證規則統計驗證規則推薦規則Query數據集合數據工廠算法挖掘Apriori聚類人工參與進化算法推薦進化算法推薦規則映射的query統計分布的流量抽取GAP真實覆蓋率優
13、化的抓手期望理論覆蓋率測試用例規則規則和query優化演進圈Trace數據Log數據數據業務model統計model整體架構和核心模塊:玄武 業務Model抽取factsTrainingDataForecastDatarulesPatter MatcherBusiness ModelTest ResultreAssociation ruleBayes classifierRule EngineClustering algorithmAssertFeatureEngineeringfactsfacts核心能力:基于MBT思想的model測試線上真實query的大數據全場景業務覆蓋覆蓋率gap抓手
14、的自我進化業務Model可衡量othersfactsrulesrulesrulesreContent initiatorBusiness parserIntelligence AnalysisRules loader算法開始掃描數據庫,對每個項進行記數1階候選項目集是否大于最小支持度1階頻繁項目集Aprior-Gen運算2階候選項目集2階頻繁項目集掃描數據庫,對每個項進行計數.是否大于最小支持度Aprior-Gen運算K階頻繁項目集掃描數據庫,對每個項進行計數K+1階候選項目集K+1階頻繁項目集是否大于最小支持度算法結束玄武 規則智能學習:Apriori算法核心能力:業務變更自動處理,無需人工
15、介入自動識別新字段規則字段取值范圍與異常檢測大數據訓練自動發掘,字段之間的關系(Apriori)Y.YNYN項集掃描過程Saas應用層(End Users)Paas應用層(Developers)Iaas應用層(Systems)Alidocker規則管理規則校驗特征工程智能學習規則進化規則引擎(通用規則驗證平臺)查詢線冒煙更新線冒煙單模塊冒煙全景監控玄武分層架構冒煙域對比域索引對比前端對比ERPC數據對比性能域流程域穩定性壓力測試環境部署掃core測試中心,可插拔式測試能力接入,可定制pipeline測試能力支撐業務線接入抓取線上請求接入玄武直通車業務定向業務云營銷業務其他BU接入測試中心預發P
16、ipeline冒煙測試對比測試監控測試掃core異常請求性能測試斷流測試通過,繼續發布關閉報警發布應用鏡像線上Pipeline測試中心冒煙測試測試通過報警退出玄武 無人值守發布驗證流程測試失敗環境部署資源分配鏡像部署環境監控環境監控發布準入預發環境線上機房A線下測試通過開啟報警觀察效果繼續發布線上機房B斷流關閉報警發布應用鏡像觀察效果接流開啟報警測試中心冒煙測試線上Pipeline測試通過自動回滾測試失敗接流性能測試的思考性能測試:一種Case完全標準化的測試標準化的測試用例標準化的驗證標準化的東西一定是可以自動化的是否可以全流程自動化?挑戰:解法:基于壓測場景的數據提取爬山算法的加壓方式均值
17、飄逸算法的系統性能驗證用例自動生成自動化校驗測試數據自動生成無人值守的智能壓測平臺ACP核心點:無人值守的性能測試壓測場景數據自動化抽取爬山算法+均值漂移探測系統性能極值性能指標多維化多協議多場景支持基于隨機森林的校驗模型創新技術簡介數據工廠05TTswiftodps業務數據數據中心thread1thread2thread3thread4thread5threadnTime runnel業務處理隨機抽取順序選取抽樣選取映射選取用戶定義storageSlaveSlaveAgent測試打標+字段改寫SlaveSlaveLocalJob過濾無效queryQuery測試打標白名單過濾用戶規則改寫數據校
18、驗上傳hdfsTT:pvlogSwift:預估回流數據創新技術簡介無人值守方案無人值守的自動壓測方案模型、算法主導壓測過程代替人工壓測無人值守的壓測全流程pipeline異常點檢測算法組件:Kmeans-算法均值漂移算法馬氏距離,歐式距離檢測算法壓測流程算法組件:爬山算法退火算法無人值守的自動壓測pipeline核心模型預估組件基于隨機森林的模型基于dnn/rnn的模型根據業務線需要自定義選取流程算法自動調用模型預估服務進行預測壓測到極限時調用異常點檢測算法判定是否到達極限無人值守壓測質量的另一個領域客戶反饋的線上問題挑戰:分布式實時系統架構客戶收益敏感性業務場景膨脹和個性化算法的不可解釋性解
19、法:1.端到端的系統Trace技術2.系統節點的數據透出3.系統快照4.秒級數據處理能力智能debug系統引擎在線系統Trace服務實時異步回寫trace信息巡檢冒煙系統在線trace數據流實時更新系統擬合存儲智能判斷診斷模型場景編排場景Model 1場景Model 2場景Model 3常規診斷投訴診斷風險診斷客戶操作廣告無展現系統狀態不對創意出價未同步扣費大于出價投放超過預算投放地域不匹配禁搜詞違規操作審核狀態客戶改價未生效客戶計劃上下線客戶操作歷史智能debug流程用戶感知系統狀態實時反饋系統狀態、指標的收集實時大屏全景視圖模塊視圖系統視圖監控樹模塊報警Highlight系統監控大圖運維工
20、具效果監控玄武(線上測試巡檢)系統監控昆侖鏡系統狀態實時反饋大屏生產環境巡檢日常變更透出監控誤報標注監控無效標注模塊下監控項列表監控運營報表監控異常狀態提示全監控項展現異常監控追蹤感知洞察處理基于質量中臺一天落地的巡檢方案基于質量中臺一天落地的巡檢方案直通車定向廣告業務信息流品牌云營銷機房1機房2機房機房3巡檢場景玄武平臺debug平臺流量端全鏈路場景巡檢業務場景鏈路節點全景業務指標巡檢Rpm、ctr系統指標Qps、超時率、cpu等日志每五分鐘是否存在error log每五分鐘里相對過去7天是否存在新增error log重要文件巡檢存在coredump文件機房內部算法配置文件不一致對比一致率三
21、機房對比一致率10分鐘巡檢分鐘級排查質量兜底大促穩定性基于質量中臺的持續交付Part.06“技術驅動業務,場景反哺技術”應用aNew應用b應用cNew應用dNew應用aNew應用cNew應用dNew應用aNew應用b應用cNew應用dNew應用aNew應用b應用cNew應用dNewperfperfperfperf依賴依賴依賴依賴Falg1Falg2Falg3應用aNewperf應用bperf應用cNew應用dNewperfperf依賴Markov玄武需求1需求2需求3感知代碼全覆蓋智能回歸實時質量可編排極致左移感知變更全覆蓋極致右移自學習線上線下感知多維度實時4小時4小時天級迭代UT服務化功能
22、測試功能無diff性能無diff單應用、新功能優化,功能不變多應用、新功能智能質量中臺的持續交付 業務支撐無人值守發布靜態代碼分析單元測試功能測試集成測試打鏡像GIT功能A/B test性能A/Btest預生產測試線上測試預發聯調灰度生產線上測試CDCI集成測試效果系統監控工程效能看板實時狀態反饋開發過程反饋效果反饋效能提升測試智能質量中臺的持續交付 Flow.ci.cd智能質量中臺的持續交付 效能解決方案專注業務極簡模式打包/部署單元測試功能測試功能無diff性能無diff開發功能測試平臺git壓測平臺對比平臺監控平臺需求管理巡檢平臺鏡像/發布Paas層環境部署打鏡像覆蓋率功能測試壓測對比測
23、試發布/冒煙開發環節效能解決方案方案設計:REST打通打鏡像/部署等工程能力 可編排pipeLine串聯測試能力 監控代碼變更自動觸發 快速反饋質量結果核心價值:開發同學專注業務開發 提交代碼自動觸發全流程 屏蔽研發流程中復雜性 快速逼近可上線狀態結果:效能解決方案 4小時完成一次迭代 代碼流水線 gitOps工作模式無人值守發布測試技術體系的演進Part.07“擴展測試的邊界,建立全程智能質量體系”測試技術體系演進綜述效率質量 全鏈路場景覆蓋測試 線上測試 測試框架 交互式 推薦式 精準測試 功能測試平臺 性能測試平臺 冒煙測試平臺 CI/CDCode 速率&反饋回路提升大范圍深度廣度覆蓋提升測試平臺化Case編寫技術和使用機制的創新 Feedback loop時間 Pipeline 效率 Case編寫運行效率 問題debug效率 算法測試 基于算法的測試謝 謝