《京東-張愛蕓-京東數據測試平臺質效建設實踐.pdf》由會員分享,可在線閱讀,更多相關《京東-張愛蕓-京東數據測試平臺質效建設實踐.pdf(30頁珍藏版)》請在三個皮匠報告上搜索。
1、京東數據測試平臺質效建設實踐張愛蕓 京東 效能平臺資深技術產品經理張愛蕓“京東效能運營研發部 資深技術產品經理2015年加入京東,先后主導過集團大數據平臺建設、集團統一AB實驗平臺、集團統一DevOps平臺產品建設,有較豐富的從0-1產品搭建經驗。目前主要深耕DevOps測試域效能工具平臺(數據測試平臺、測試物料平臺等),專注于解決測試痛點,提升測試效率”講師簡介目錄12345京東數據測試的演進從零到一的數測平臺建設之路實踐成果展示探索方向與未來展望案例復盤與總結目錄1京東數據測試的演進之路為什么做數據測試是什么?測試定義數據測試VS大數據測試數據測試VS數據質量測試范圍數據表BI報表數據接口
2、服務數據看板測試內容數據測試易用性測試功能測試性能測試安全性測試高可用測試容錯性測試數據測試是對數據質量、完整性、一致性和準確性等方面進行驗證和評估的過程。數據測試與傳統測試的區別人員要求硬技能有較多較完善的自動化平臺軟件測試技術,如Selenium等工具和技術技術+工具測試重點對象+流程業務測試數據測試需要掌握軟件測試理論業務領域知識自動化平臺少,多為手動執行SQL測試熟悉編程語言和數據庫技術,如python、java、SQL,了解Hadoop等基本的軟件測試理論和實踐對業務領域知識的了解大數據、算法、數據庫等知識關注數據的質量(完整性、一致性)、及時性等沒有標準的測試流程規范軟件的業務功能
3、和性能有成熟的敏捷和DevOps實踐保障人少任務重工作難京東數據測試的演進展示前端權限控制展示后端數據服務數據存儲數據計算生產數據零售健康物流金融數據抽取其他DruidESCKHBaseJIMDB實時計算任務離線計算任務實時接入離線抽取指標計算數據讀取限速限流登錄鑒權復合指標熔斷限流請求轉發統一服務數據產品服務層數據處理層源數據展示層業務A數據流組織架構商城醫療數據中臺業務研發業務研發數據研發數據測試數據中臺數據研發數據測試數據研發業務C數據研發數據BP數據研發數據測試其他業務研發數據業務數據研發業務D數據研發質效水平業務整合工具建設質效水平業務發展存在哪些問題?人少活多,質量問題頻發,很難得
4、到全面的保障現狀人的問題方法的問題流程的問題人力資源不足經驗不足專業知識儲備不夠缺少資料學習業務理解深度不夠多靠手動SQL查詢,效率低個性化的腳本自動化很難賦能所有業務測試資產無法沉淀,無法傳承研發很難自助自測,測試壓力大流程不規范、不統一各業務測試流程不統一研發與測試合作的流程不規范破題思路工欲善其事,必先利其器 目錄2從零到一的數測平臺建設做了什么,解決了什么問題平臺建設思路目標:所有測試過程可視化,測試資產線上化舉措:流程線上化測試計劃能力線上化用例管理線上化自動化標準化服務化(未開始)全面覆蓋數據測試場景,達成自動測、人人測、持續測、盡早測的目標目標:提升測試效率舉措:測試能力自動化(
5、自動生成用例、自動比對結果等、自動數據探查等)目標:前人栽樹,后人乘涼,建立京東標準的數據測試規范流程舉措:沉淀最佳實踐,打造最佳測試流程目標:賦能更多平臺和業務,全面開花舉措:將平臺能力以服務化方式,接入DataOps或更多平臺線上化是平臺助力業務提效的第一步能力線上化數據源線上化JimDB統一管理數據源統一數據查詢線上化是平臺助力業務提效的第一步能力線上化多執行方式多比對模式可自動生成多版本記錄語法校驗測試用例既支持單查詢模式,又支持比對模式可以自動生成SQL既支持SQL,又支持腳本不同計劃可以執行用例的不同版本SQL不支持寫操作,保障數據安全線上化是平臺助力業務提效的第一步流程線上化基礎
6、測試全面測試核心測試自動化是幫助業務提效的重要手段面向測試問題1、很多的基礎用例其實是通用的,重復的(零值、空值、明細比對等)2、人工比數費“眼”,跨庫比對費“勁”3、腳本各自維護,無法賦能效率低自動生成自動比對自動執行腳本用例自動生成單表自動比對多表自動比對支持在線編輯腳本支持腳本用例執行場景:新模型上線單表探查:表規模 字段質量場景:模型變更數據對比:明細對比 數據規模對比 表結構對比數據探查數據比對自動化是幫助業務提效的重要手段面向研發的數據探查需求調研模型設計數據開發模型上線模型運維需求變更數據開發流程簡示圖數據查詢/分析數據探查數據比對場景:配置化數據看板自測/測試服務探查:自動探查
7、各種指標維度 支持單用例重跑服務探查自動化是幫助業務提效的重要手段面向研發的服務探查需求調研模型/指標設計看板搭建看板測試看板發布需求變更數據看板開發流程簡示圖服務探查標準化是業務提效的重要保障全鏈路測試流程標準化(測試流程節點可配置)水平鏈路打通(垂直領域原子能力可擴展)垂直領域擴展流水線測試原子準入流水線回歸流水線單測流水線卡點能力單測覆蓋率用例評審用例通過率創建計劃功能測試回歸測試測試報告冒煙測試流水線執行結果自動化測試原子接口自動化移動端自動化UI自動化數據自動化需求管理協作空間代碼管理變更管理測試管理部署編排提測發布上線(提測流水線可配置)提測準入流水線(部署編排)無流量發布自動化驗
8、證掛載流量是什么讓我們在短時間內,快速完成平臺的搭建并順利落地?平臺建設亮點模塊化的架構設計平臺建設亮點以用戶為中心,用戶既是參與者,又是受益者分層推廣落地(成果)少受批評優先在共建團隊賦能推廣面向全量用戶推廣融合各類工具(過程)取長補短將業務單點的提效工具通用化共建賦能達到價值最大化專業底座建設(初期)少走彎路平臺化思維與專業測試的思想碰撞與業務團隊深度共建,效率提升理念:共建共贏需求提出能力建設用戶平臺有些用戶會說共建的不是專業的工程師,代碼質量會不會不好,時間會不會不能保障?無法長時間投入,后續出BUG怎么辦?共建原則:5個一(一套代碼庫、一套數據庫、一個產品經理、一個架構師、一個Bac
9、kup)平臺建設過程中遇到的挑戰挑戰:業務種類多,測試場景多,對產品能力的通用性、全面性有較高要求解法:前期做好充分的調研,保證產品在設計的過程中,盡可能通用,覆蓋較多用戶的場景提供通用的個性化測試能力腳本更為個性的可以采用共建集成的方式接入平臺產品設計要求高挑戰:用戶習慣、平臺體驗沒有做“好”就去推廣時,多輪受阻解法:深入了解用戶需求和行為習慣,優化產品設計和服務流程。定期收集用戶反饋,及時改進產品和服務。借助數據分析,持續優化用戶體驗,提升用戶滿意度運營推廣常受阻挑戰:平臺涉及大量用戶數據,也有可能有敏感數據,需要保障數據安全,并符合審計要求解法:全面嚴格的數據權限控制(查看、編輯、執行等
10、),且所有操作均要留痕采用加密技術、訪問控制等手段,確保數據在傳輸和存儲過程中的安全性。定期進行安全審計和漏洞掃描,及時發現并修復潛在的安全風險。數據安全要求嚴目錄3實踐成果展示落地效果如何實踐成果展示質量流程效率流程標準化完成了標準的測試流程、研發自測流程及定時巡檢流程的建設,并成功在集團各個BG試點推廣落地需求線上化率達到60%(需求線上化率=使用線上平臺測試的需求數/總提測數據需求數)00.20.40.60.82023Q1前2023Q22023Q32023Q42023Q1前2023Q250%的用例自動生成60%的用例自動斷言,節省驗證時間數據需求測試周期縮短10%024682023Q12
11、023Q22023Q32023Q4效率提升在零售實現80%的滲透率,測試效率有明顯的提升:質量保障近半年發現問題近100個數據需求測試周期目錄4案例復盤與總結總結與經驗案例總結研發、產品測試(核心)賦能過程業務能力建設代碼檢查產、研、測測試左移賦能測試右移賦能測試提效SQL掃描規則沉淀數據探查單表探查數據對比基礎能力(數據源連通)MYSQLCKESHIVEJimDBDorisDruidJEDTiDB用例管理計劃管理變量管理腳本管理定時巡檢單查模式對比模式用例執行測試報告系統變量自定義變量Pythonshell監控報警質量報告提高提測質量+提高自測效率提高測試效率+降低測試成本降低線上問題率+提
12、高數據質量壓測助手服務探查路由探測任務管理壓測報告數據查詢數據構造需求階段研發自測查詢模版執行結果執行歷史手動構造定時構造模型開發研發自測功能測試巡檢監控回歸測試那些年踩過的坑生成引擎對數據庫的兼容性生成引擎負責生成一些通用檢查點的SQL,同時也會基于用戶提交的SQL,生成對應的測試用例,用戶使用過程初期有幾個問題:1、不同數據庫類型,有些函數不兼容,要采用不同的策略進行處理2、不同數據庫類型,有各自復雜的字段類型,很難統一處理執行引擎的穩定可靠執行引擎負責平臺提交的各類型數據庫查詢語句的統一執行及結果的返回,這里也曾經遇到過一些問題,比較嚴重的,就是因為數據量過大導致了服務異常解法:充分調研
13、之后,對不同的字段類型、用到的函數進行精細化處理解法:1、平臺增加查詢數據量的限制2、超過一定閾值后,平臺采用文件的方式傳輸啟示:細節決定成敗目錄5探索方向與未來規劃未來計劃平臺未來規劃數據與AI僅一步之遙,如何用好AI這把利劍,提升測試效率,需要深入探索AI智能賦能基礎安全到位后,對于隱私數據的判斷、加密等仍需要進一步深入優化.深耕數據安全平臺尚年輕,還需多磨練用戶體驗打磨將數據測試,打通到數據需求交付的平臺,做到數據開發的持續集成與交付,形成DataOps持續集成與交付探索大數據量處理的能力,并盡可能提升已有執行效率,降低用戶計算資源的消耗平臺性能提升實時數據測試標準測試方法的探索與實踐探索實時數據測試微 信 官 方 公 眾 號:壹 佰 案 例關 注 查 看 更 多 年 度 實 踐 案 例