《1-楊寶松-Bestcase—接口熱度代碼覆蓋和智能用例推薦.pdf》由會員分享,可在線閱讀,更多相關《1-楊寶松-Bestcase—接口熱度代碼覆蓋和智能用例推薦.pdf(41頁珍藏版)》請在三個皮匠報告上搜索。
1、BestCase接口熱度代碼覆蓋和智能用例推薦2023 深圳站楊寶松2017今 阿里巴巴1688技術部 測試開發專家負責無線測試團隊工作,含項目整體交付、端特性測試專項建設、體系化測試平臺建設等20152017 網易網絡(杭州)科技有限公司 測試負責人負責網易金融團隊測試工作,含項目整體交付、測試工具研發等相關工作20132015 恒生電子股份有限公司 測試開發負責投資管理系統全鏈路測試以及自動化能力建設相關工作2023 深圳站目錄CONTENTS!#$01%&(02 !#$03%&(05 )*+,06 -./004 2023 深圳站01背景介紹2023 深圳站背景介紹-接口測試發展歷程純手工
2、測試腳本化測試平臺化配置流量化測試智能化測試產品化配置,快捷規則,方便用例編寫海量用例,真實流量,方便數據構造算法能力與測試能力結合,智能提效2016年2000年左右1997年上世紀90年代2020年左右2023 深圳站背景介紹-接口測試平臺能力建設現狀HTTPRPC協議DUBBOHSFMTOP接口類型HTTP協議入參返回獲取方式用例組成斷言校驗方式驅動執行方式腳本工具場景配置流量錄制代碼分析人工識別腳本編碼用例保鮮方式代碼分析人工維護分支部署代碼分析人工維護流量采集手動確認快捷規則平臺分類代碼分析人工維護流程編排變更觸發定時巡檢快捷規則批量設置流量采集手動確認變更觸發定時巡檢2023 深圳站
3、背景介紹-接口質量保障體系接口質量保障體系1.0多端并存架構復雜高業務高速迭代部門現狀測試資源緊張質量要求較高腳本化方案流量化方案HSF/DUBBOMBOXFAAS接口類型眾多HTTPMTOP配置化方案多方案適配解決暫無方案FAAS發布網關發布應用發布配置發布發布頻率較高定制化平臺發布日均發布百余次最小成本完成接口質量保障體系,但存在諸多問題和隱患2023 深圳站02待解問題2023 深圳站待解問題入參及斷言的覆蓋程度難以度量內部接口邏輯覆蓋程度難以度量用例編寫成本高用例質量難度量首次及后續維護接口用例時,需要大量人工介入,溝通確認成本較大接口出現變更時,多平臺進行用例保鮮成本較大接口繁雜難收
4、斂接口類型繁多且復雜度較高,無統一校驗方案過多依賴三方平臺,成本難以控制,校驗穩定性難以保障2023 深圳站03解決思路2023 深圳站解決思路流量化方案,快捷構造接口用例智能推薦接口用例,度量接口用例質量建設高可用多接口適配的平臺產品自主研發接口測試平臺,支持域內所有的接口類型校驗針對接口發布渠道,進行變更攔截,高可用保障接口質量通過獲取線上流獲取接口協議及入參,真實高效的構造接口用例獲取用例執行時的熱度覆蓋行,迭代式度量當前用例質量及接口覆蓋情況通過入參、返回、熱度行及接口測試結果作為因子進行用例入參及斷言推薦自主研發接口平臺,高效快捷獲取用例,以最小量級的接口用例完成熱度行覆蓋2023
5、深圳站解決思路-建設支持多接口高可用的接口測試平臺接口質量保障體系2.0應用發布配置發布網關發布發布渠道用例管理接口校驗方案函數發布流量采集入參甄選腳本編排JSONPATH接口協議流量采集人工確認保鮮方式流量補充定制化平臺發布變更校驗識別變更獲取用例并發執行狀態仲裁通知觸達人工確認斷言規則流程編排雖然完成多接口、高可用、高效率的接口測試平臺,但線上仍有部分問題遺漏2023 深圳站解決思路-概念陳述-熱度熱度概念大于等于N%比例流量能夠訪問到的代碼行低于N%比例流量能夠訪問到的代碼行從未被訪問到代碼行2023 深圳站解決思路-概念陳述-模塊沙箱模塊Repeater模塊(提供接口完整入參及返回信息
6、)Trace模塊(提供接口完整映射行覆蓋信息)agent啟動初始化上下文鑒權配置過濾事件分發格式化數據數據上傳agent啟動初始化上下文鑒權配置過濾事件分發格式化數據數據上傳代碼行采集入參返回采集RepeaterTracetraceId接口入參接口返回值traceId行覆蓋信息traceId2023 深圳站解決思路-智能推薦接口用例,度量接口用例質量接口質量保障體系3.0接口校驗方案接口分析協議獲取變更分支字段特征行信息特征結構特征結構特征字段特征入參斷言入參斷言接口分析保鮮方式流量采集入參推薦斷言推薦二次確認repeater采集trace采集聚類分析關系關聯應用發布配置發布網關發布發布渠道函
7、數發布定制化平臺發布變更校驗識別變更獲取用例并發執行狀態仲裁通知觸達通過熱度代碼,度量接口覆蓋程度;通過智能推薦,提升用例產出依據及產出效率行信息特征2023 深圳站解決思路-BestCase方案設計(算法側)整體推薦思路2023 深圳站推薦邏輯細化解決思路-BestCase方案設計(算法側)2023 深圳站解決思路-BestCase方案設計(算法側)data:score:100,otherScore:score:101,orderNo:9331,tradeWPNum:38205,health:優秀data.score-100data.otherScore-score:101data.othe
8、rScore.score-101data.orderNo-9331data.tradeWPNum-38205data.health-優秀$.data.score=100$.data.health=優秀$.data.otherScore.score=101原始數據處理后數據DBSCANfp-growth最終結果2023 深圳站解決思路-BestCase方案設計(算法側)2023 深圳站流量采集數據解決思路-BestCase方案設計(算法側)主要數據流轉過程(用例體部分)特征提取后數據結構相似度計算后數據排除已覆蓋數據+未覆蓋熱點行計算行覆蓋情況,排除已覆蓋數據通過未覆蓋信息再次從原始數據尋找=最
9、終用例體集合2023 深圳站原始數據接口數據聚類最終結果解決思路-BestCase方案設計(算法側)主要數據流轉過程(斷言部分)接口數據特征獲取2023 深圳站04具體實踐2023 深圳站具體實踐-BestCase產品設計模塊配置采集配置應用名單配置管理聚類分析線上實時采集度量數據用例執行數據沉淀結果觸達用例甄選用例執行子調用配置全局配置鑒權配置應用管理熱度行統計合并計算實時計算執行數據采集動態數據統計預期展示結構特征熱度行用例推薦入參推薦因子字段特征結構特征斷言推薦因子字段特征熱度行2023 深圳站具體實踐2023 深圳站具體實踐2023 深圳站具體實踐2023 深圳站具體實踐2023 深圳
10、站具體實踐2023 深圳站05效果收益2023 深圳站效果收益2023 深圳站效果收益效果收益自建平臺,支持多接口協議,高效穩定執行沉淀用例數3000+,執行總數3000W+,通過率99.62%持續推薦接口用例,持續輸出接口覆蓋質量指標線上流量采集,快捷高效完成接口用例構造日均采集流量15W+,覆蓋核心應用34個,用例維護成本由以天為單位降低為分鐘級日均推薦用例620+,核心應用熱度覆蓋由原有的不足10%提升至80%+2023 深圳站06未來展望2023 深圳站未來展望-無人值守、持續集成應用發布配置發布網關發布發布渠道函數發布定制化平臺發布識別變更獲取用例狀態仲裁通知觸達接口質量保障體系X.
11、0流量采集,識別接口新增及修改流量分析,算法推薦入參及斷言執行結果回流,不斷優化推薦邏輯變更校驗/定時巡檢并發執行變更校驗用例庫沉淀流量分析,持續推薦接口-用例感知變更,執行觸發用例庫-執行觸達,迭代優化沉淀用例庫風險告知感謝聆聽CSDN全球最大的中文開發者社區平臺CSDN全球最大的中文開發者社區平臺CSDN創立于1999年全球編程類網站排名第7(來源:Similarweb 2023.04)注冊用戶超過4300萬,覆蓋90%的中文開發者新媒體矩陣粉絲數量超過3100萬超過1000家企業客戶和合作伙伴目前公司員工近800名,分布在北京、長沙、上海、深圳、杭州、成都等城市,并在美國硅谷常設辦事處旗下品牌旗下品牌專業中文IT技術社區:CSDN.NET多媒體專業出版:新程序員開發者專屬移動APP:CSDN APP代碼托管協作平臺:GitCode代碼工具協同平臺:InsCodeIT人力資源服務:科銳??怂关俗W絡高校IT技術學習成長平臺:高校俱樂部