日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于知識圖譜的調(diào)用鏈分析精準(zhǔn)化測試平臺

vliwulianw ? 來源:嗶哩嗶哩技術(shù) ? 作者:熊林濤 ? 2022-10-13 17:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

01 背景

傳統(tǒng)軟件測試技術(shù)主要基于測試人員對業(yè)務(wù)的理解,但由于經(jīng)驗的局限性、被測系統(tǒng)的復(fù)雜性以及與真實業(yè)務(wù)數(shù)據(jù)的差距,肯定存在測試不充分的情況,所以,雖然整個測試流程很規(guī)范,但最終軟件質(zhì)量還是不盡如人意。而隨著分布式、微服務(wù)架構(gòu)、大數(shù)據(jù)技術(shù)的出現(xiàn),軟件越來越復(fù)雜,迭代越來越快,測試的挑戰(zhàn)性越來越大。測試人員急切的需要一套更加精確、高效的測試技術(shù)和方法。精準(zhǔn)化測試技術(shù)就在這種背景下應(yīng)運而生并快速發(fā)展。 精準(zhǔn)化測試技術(shù)是一種可追溯的軟件測試技術(shù),通過構(gòu)建一套計算機(jī)測試輔助分析系統(tǒng),對測試過程的活動進(jìn)行監(jiān)控,將采集到的監(jiān)控數(shù)據(jù)進(jìn)行分析,得到精準(zhǔn)的量化數(shù)據(jù),使用這些量化數(shù)據(jù)進(jìn)行質(zhì)量評價,利用這些分析數(shù)據(jù)可以促進(jìn)測試過程的不斷完善,形成度量及分析閉環(huán),實現(xiàn)軟件測試從經(jīng)驗型方法向技術(shù)型方法的轉(zhuǎn)型。

02 定義

在對精準(zhǔn)測試下定義之前我們先看幾個精準(zhǔn)測試需要解決的問題:

如何刻畫和度量有限測試集合的充分性

如何挑選有限測試集合并充分執(zhí)行

如何讓上述過程更加自動化、更加精準(zhǔn)

那我們可以得到精準(zhǔn)測試需要包含的幾個特性:

全不全:通過代碼覆蓋率度量測試充分性

準(zhǔn)不準(zhǔn):通過精準(zhǔn)推薦代替人工進(jìn)行變更影響范圍評估指導(dǎo)用例回歸

快不快:精準(zhǔn)推薦自動化&用例執(zhí)行失敗快速定位等

然后我們可以將其定義為:精準(zhǔn)測試是基于代碼和用例關(guān)聯(lián)關(guān)系的測試充分性度量和提升手段之一。

03 實現(xiàn)思路

首先貼一張流程圖:

aa3d0764-4a2d-11ed-a3b6-dac502259ad0.png

整體使用有兩條鏈路: 1.靜態(tài)掃描+推薦測試范圍,流程如下:

原始代碼靜態(tài)掃描,獲取基礎(chǔ)函數(shù)調(diào)用鏈

原數(shù)據(jù)解析,掃描結(jié)果存儲至Neo4j

代碼diff獲取版本差異,圖譜查詢影響接口范圍

測試范圍推薦

2.動態(tài)追蹤+推薦測試用例,流程如下:

業(yè)務(wù)代碼插樁

插樁后執(zhí)行業(yè)務(wù)/自動化測試用例

采集“用例-函數(shù)調(diào)用鏈”權(quán)重

代碼diff獲取版本差異

測試用例推薦

04 技術(shù)架構(gòu)

4.1 技術(shù)選型

aa7a3346-4a2d-11ed-a3b6-dac502259ad0.png

4.2 測試范圍評估實踐

ab26edca-4a2d-11ed-a3b6-dac502259ad0.png

4.2.1

原始代碼靜態(tài)掃描,獲取基礎(chǔ)函數(shù)調(diào)用鏈

首先會有兩輪掃描: 1. 自研算法獲取函數(shù)的基礎(chǔ)調(diào)用鏈,獲取函數(shù)節(jié)點及調(diào)用關(guān)系

abdc61b4-4a2d-11ed-a3b6-dac502259ad0.png

2. AST掃描,獲取函數(shù)節(jié)點補(bǔ)充信息

ac3bfc46-4a2d-11ed-a3b6-dac502259ad0.png

AST是抽象語法樹(Abstract Syntax Tree)的簡稱,AST以樹狀形式表現(xiàn)編程語言的語法結(jié)構(gòu),樹上每個節(jié)點都表示源代碼中的一種結(jié)構(gòu)。

4.2.2

原數(shù)據(jù)解析,掃描結(jié)果存儲至Neo4j

在獲取到調(diào)用鏈的graph數(shù)據(jù)后,遍歷轉(zhuǎn)換成存入Neo4j所需的cypher語句

ad1d7b3a-4a2d-11ed-a3b6-dac502259ad0.png

如上圖所示,圖譜最基本的組成單位,存在(代碼所屬包)-[包含]->(文件)-[包含]->(函數(shù))-[調(diào)用]->(函數(shù))的結(jié)構(gòu) 在獲取項目調(diào)用鏈原數(shù)據(jù)后,再深度遍歷每一條調(diào)用鏈路采集每個包、文件、函數(shù)的對應(yīng)關(guān)系,以及路徑、所處位置、出參入?yún)?、注釋、代碼行等信息,寫入Neo4j。

ad46901a-4a2d-11ed-a3b6-dac502259ad0.png

4.2.3

代碼diff獲取版本差異,圖譜查詢影響接口范圍

通過git開放api,我們可以在git diff內(nèi)獲取兩次commit對比

addd64ae-4a2d-11ed-a3b6-dac502259ad0.png

通過文件路徑與函數(shù)名,我們可以找到對應(yīng)的函數(shù)節(jié)點

ae767eb4-4a2d-11ed-a3b6-dac502259ad0.png

然后通過圖譜向上追蹤查詢完整的調(diào)用鏈路,最終獲取到影響的接口

ae93002a-4a2d-11ed-a3b6-dac502259ad0.png

4.2.4 測試范圍推薦

可視化頁面展示版本代碼對比,與影響的接口(服務(wù)端)、頁面/組件(客戶端)

aecbdca6-4a2d-11ed-a3b6-dac502259ad0.png

4.3 測試用例推薦實踐

b016c602-4a2d-11ed-a3b6-dac502259ad0.png

下面主要講解調(diào)用鏈獲取及加權(quán)部分

b03b0166-4a2d-11ed-a3b6-dac502259ad0.png

4.3.1 業(yè)務(wù)代碼插樁

修改編譯邏輯,在開始編譯前通過AST解析插入覆蓋率和Trace的采集器

b052c5a8-4a2d-11ed-a3b6-dac502259ad0.png

4.3.2 用例執(zhí)行

通過代理服務(wù)執(zhí)行測試用例,采集“用例-調(diào)用鏈”的映射關(guān)系

4.3.3 采集“用例-函數(shù)調(diào)用鏈”權(quán)重

對關(guān)聯(lián)關(guān)系進(jìn)行加權(quán)計算后,存入Neo4j。 下面舉例幾種不同的權(quán)重計算方式:調(diào)用次數(shù)加權(quán)

b0a883da-4a2d-11ed-a3b6-dac502259ad0.jpg

假如有一條測試用例,執(zhí)行時經(jīng)過了Api_1和Api_2兩個接口 然后Api_1執(zhí)行時經(jīng)過了函數(shù)FuncA、FuncC、FuncE Api_2執(zhí)行時經(jīng)過了函數(shù)FuncB、FuncD、FuncE 我們可以理解為該條測試用例,對于函數(shù)A、B、C、D、E的調(diào)用次數(shù)加權(quán)分別為1、1、1、1、2業(yè)務(wù)模塊加權(quán)這是半手工的方式,如果在用例管理系統(tǒng)中,有一條case屬于“書架”模塊,那我們可以將不同層級的代碼,處于bookshelf目錄下的函數(shù),都與該case綁定一個“同模塊(module_weight)”的關(guān)系(relationship)

b0d58010-4a2d-11ed-a3b6-dac502259ad0.jpg

文本相似度加權(quán)通過對測試用例庫內(nèi)的所有用例,進(jìn)行分詞、建立詞庫,使用tf-idf的方式計算用例與用例間的文本相似度,來計算用例的相似性

b0fe0dc8-4a2d-11ed-a3b6-dac502259ad0.jpg

此方案對測試人員編寫用例時的要求較高,如果會有不同的測試人員去測試相同模塊,因為書寫習(xí)慣不一樣,可能會導(dǎo)致case計算結(jié)果不準(zhǔn)確,所以我們引入GCN計算case的相似性GCN(圖卷積神經(jīng)網(wǎng)絡(luò))計算用例相似性實際使用中,我們會采取不同的特征來訓(xùn)練GCN,用于計算不同場景的結(jié)果 在這里我們舉一個簡單的例子,用于計算case的相似性:

b119b104-4a2d-11ed-a3b6-dac502259ad0.png

1. 我們通過采集不同case對函數(shù)的調(diào)用層級,構(gòu)成一個C × N的稀疏矩陣 (C:測試用例個數(shù),N:函數(shù)節(jié)點數(shù)) 2. 將調(diào)用層級數(shù)取反,然后歸一化,得到訓(xùn)練模型用的矩陣 3. 根據(jù)GCN的定義X'=σ(L ?symXW)來定義GCN層,然后堆疊兩層GCN構(gòu)建圖卷積網(wǎng)絡(luò) 4. 訓(xùn)練完后,通過TSNE將輸出層的score嵌入進(jìn)行二維化處理,計算每個節(jié)點與節(jié)點的歐式距離,再存入Neo4j

b19796a0-4a2d-11ed-a3b6-dac502259ad0.png

4.3.4 代碼diff獲取版本差異

與步驟4.2.4一樣,通過代碼diff獲取改動的函數(shù)節(jié)點,然后通過權(quán)重計算獲取測試用例。

4.3.5 測試用例推薦

如果是業(yè)務(wù)用例則自動創(chuàng)建測試計劃,并關(guān)聯(lián)測試用例。 如果是自動化測試用例,則自動導(dǎo)入用例所處的文件、函數(shù)信息。

b1fbf474-4a2d-11ed-a3b6-dac502259ad0.png

05 落地效果

目前平臺在MR、冒煙、提測、回歸、上線等不同階段,采取了8種不同的質(zhì)量保障措施:

迭代時間由3周縮短至2周

版本平均需執(zhí)行自動化用例數(shù)減少80%

回歸測試階段平均需執(zhí)行用例數(shù)減少60%

覆蓋率需統(tǒng)計代碼減少90%

b244a21e-4a2d-11ed-a3b6-dac502259ad0.png

06 未來展望

隨著增量用例的增多,數(shù)據(jù)量提高,進(jìn)一步提高GCN的計算結(jié)果準(zhǔn)確度

打造調(diào)用鏈代碼染色+頁面可視化功能,助力測試環(huán)境問題定位

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4981

    瀏覽量

    74483
  • 大數(shù)據(jù)
    +關(guān)注

    關(guān)注

    64

    文章

    9107

    瀏覽量

    144139

原文標(biāo)題:基于知識圖譜的調(diào)用鏈分析精準(zhǔn)化測試平臺

文章出處:【微信號:軟件質(zhì)量報道,微信公眾號:軟件質(zhì)量報道】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    通用自動測試系統(tǒng):FCT、ATE、ICT、PCBA功能測試

    制造商完成對每一件產(chǎn)品的高效檢測和精準(zhǔn)判定。為了滿足這些需求,通用的自動測試管理系統(tǒng)應(yīng)運而生,提供了一個全面的解決方案。系統(tǒng)概述我們的通用測試管理系統(tǒng)(Test Manager)是一
    發(fā)表于 04-13 14:54

    實力認(rèn)證!行云創(chuàng)新入圍《AI 中國生態(tài)圖譜 2025》大模型開放平臺板塊

    了中國 AI 產(chǎn)業(yè)全鏈路生態(tài)布局,是洞察國內(nèi) AI 技術(shù)發(fā)展與產(chǎn)業(yè)落地的核心行業(yè)風(fēng)向標(biāo)。行云創(chuàng)新憑借在 AI 領(lǐng)域深厚的技術(shù)積淀、全棧產(chǎn)品能力及豐富的行業(yè)落地經(jīng)驗,成功 入圍圖譜第三層模型層?大模型開放平臺板塊 。 成立于 2016 年的行云創(chuàng)新,始終秉持
    的頭像 發(fā)表于 03-04 14:25 ?417次閱讀
    實力認(rèn)證!行云創(chuàng)新入圍《AI 中國生態(tài)<b class='flag-5'>圖譜</b> 2025》大模型開放<b class='flag-5'>平臺</b>板塊

    小藝開放平臺平臺功能

    選擇插件、工作流,響應(yīng)用戶需求。LLM模式適用于簡單對話、知識問答、基礎(chǔ)內(nèi)容生成等場景。 工作流模式 工作流模式是一種基于規(guī)則流程的智能體編排方式。開發(fā)者將復(fù)雜任務(wù)拆解為有序的規(guī)則步驟(如數(shù)據(jù)獲取
    發(fā)表于 01-30 15:24

    風(fēng)機(jī)異響 “找不準(zhǔn)”?聲紋圖譜分析,故障點精準(zhǔn)定位

    風(fēng)機(jī)異響找不準(zhǔn),本質(zhì)是沒讀懂設(shè)備的 “求救信號”。聲紋圖譜分析就像給風(fēng)機(jī)配了 “私人醫(yī)生”,24 小時不間斷監(jiān)測,把隱性故障轉(zhuǎn)化為明確數(shù)據(jù),讓每一次維修都精準(zhǔn)高效。
    的頭像 發(fā)表于 12-04 09:45 ?696次閱讀
    風(fēng)機(jī)異響 “找不準(zhǔn)”?聲紋<b class='flag-5'>圖譜分析</b>,故障點<b class='flag-5'>精準(zhǔn)</b>定位

    RK?平臺?DDR?測試終極指南:標(biāo)準(zhǔn)步驟?+?全場景適配方案

    DDR?作為?RK?平臺數(shù)據(jù)傳輸?shù)?“主動脈”,其穩(wěn)定性與性能直接決定產(chǎn)品體驗。尤其在內(nèi)存顆粒迭代快、多場景應(yīng)用普及的當(dāng)下,一套通用且精準(zhǔn)的?DDR?測試方法,能有效規(guī)避兼容性問題、提前發(fā)現(xiàn)隱性故障
    的頭像 發(fā)表于 11-19 07:08 ?1890次閱讀
    RK?<b class='flag-5'>平臺</b>?DDR?<b class='flag-5'>測試</b>終極指南:標(biāo)準(zhǔn)<b class='flag-5'>化</b>步驟?+?全場景適配方案

    光伏組件IV曲線測試儀:解鎖光伏組件性能的“能量圖譜儀”

    光伏組件IV曲線測試儀:解鎖光伏組件性能的“能量圖譜儀”柏峰【BF-CV1500】光伏組件的輸出特性是決定電站發(fā)電效率的核心,而IV(電流-電壓)曲線作為組件性能的“指紋圖譜”,包含了短路電流、開路電壓、最大功率點等關(guān)鍵參數(shù)
    的頭像 發(fā)表于 10-15 10:49 ?1332次閱讀
    光伏組件IV曲線<b class='flag-5'>測試</b>儀:解鎖光伏組件性能的“能量<b class='flag-5'>圖譜</b>儀”

    電線耐干濕電弧試驗機(jī)的測試數(shù)據(jù)精準(zhǔn)采集與分析方法

    在電線耐干濕電弧試驗中,測試數(shù)據(jù)是判斷電線耐候性與耐電弧性能的核心依據(jù),其精準(zhǔn)度直接決定了試驗結(jié)論的科學(xué)性與可靠性。電線耐干濕電弧試驗機(jī)需通過系統(tǒng)的數(shù)據(jù)采集手段,捕捉試驗過程中電線
    的頭像 發(fā)表于 10-11 09:20 ?550次閱讀

    BW-4022A半導(dǎo)體分立器件綜合測試平臺---精準(zhǔn)洞察,卓越測量

    精準(zhǔn)洞察,卓越測量---BW-4022A半導(dǎo)體分立器件綜合測試平臺 原創(chuàng) 一覺睡到童年 陜西博微電通科技 2025年09月25日 19:08 陜西 在半導(dǎo)體產(chǎn)業(yè)蓬勃發(fā)展的浪潮中,每一顆微小的半導(dǎo)體
    發(fā)表于 10-10 10:35

    測試小白3分鐘上手,零代碼自動測試平臺,15分鐘搭建自動測試方案

    還在為不懂代碼、搭建測試方案耗時久而發(fā)愁?ATECLOUD 零代碼自動測試平臺,專為自動測試
    的頭像 發(fā)表于 09-22 17:52 ?1078次閱讀
    <b class='flag-5'>測試</b>小白3分鐘上手,零代碼自動<b class='flag-5'>化</b><b class='flag-5'>測試</b><b class='flag-5'>平臺</b>,15分鐘搭建自動<b class='flag-5'>化</b><b class='flag-5'>測試</b>方案

    智慧科研新紀(jì)元:善思創(chuàng)興引領(lǐng)AI與自動變革

    的領(lǐng)先者,致力于為新能源、新材料領(lǐng)域打造安全、高效、智能的軟硬件一體平臺,攜手科研伙伴共同開啟下一代高效科研新范式。 ?突破邊界:薄膜材料表征的精準(zhǔn)洞察? 善思創(chuàng)興的 薄膜力學(xué)斷層掃描測試
    發(fā)表于 09-05 16:55

    零代碼自動測試平臺ATECLOUD功能詳解

    平臺通過三大優(yōu)勢顯著區(qū)別于傳統(tǒng)系統(tǒng): 1.零代碼快速構(gòu)建:無需編程即可實現(xiàn)測試方案搭建; 2.即插即用設(shè)備生態(tài):兼容主流測試儀器,降低集成門檻; 3.全維度數(shù)據(jù)智能:定制報告模板與數(shù)
    的頭像 發(fā)表于 08-20 17:32 ?1625次閱讀
    零代碼自動<b class='flag-5'>化</b><b class='flag-5'>測試</b><b class='flag-5'>平臺</b>ATECLOUD功能詳解

    自動測試平臺中TestCenter和ATECLOUD有哪些差異?

    TestCenter和ATECLOUD雖然都是自動測試平臺,但兩者在試用領(lǐng)域、技術(shù)架構(gòu)、功能特性等方面具有很大的差異性,兩者的面向客戶也有所不同。本文將簡單分析兩個
    的頭像 發(fā)表于 07-25 09:54 ?916次閱讀
    自動<b class='flag-5'>化</b><b class='flag-5'>測試</b><b class='flag-5'>平臺</b>中TestCenter和ATECLOUD有哪些差異?

    自動測試平臺ATECLOUD推出AI算法功能

    作為納米軟件自主研發(fā)的自動測試平臺,ATECLOUD 始終致力于為用戶提供高效優(yōu)質(zhì)的測試解決方案。面對5G、AI等前沿技術(shù)的迭代發(fā)展,平臺
    的頭像 發(fā)表于 07-22 16:10 ?1076次閱讀
    自動<b class='flag-5'>化</b><b class='flag-5'>測試</b><b class='flag-5'>平臺</b>ATECLOUD推出AI算法功能

    信而泰×DeepSeek:AI推理引擎驅(qū)動網(wǎng)絡(luò)智能診斷邁向 “自愈”時代

    ,還是工業(yè)協(xié)議時序混亂,均可完整還原端到端業(yè)務(wù)會話鏈條,為智能分析提供堅實基礎(chǔ)。2.AI根因定位:推理引擎驅(qū)動秒級精準(zhǔn)診斷l(xiāng) 知識圖譜驅(qū)動:將網(wǎng)絡(luò)拓?fù)?、流量統(tǒng)計、歷史趨勢、會話日志、異常告警、威脅情報等
    發(fā)表于 07-16 15:29

    AI智能眼鏡產(chǎn)業(yè)鏈分析

    電子發(fā)燒友網(wǎng)站提供《AI智能眼鏡產(chǎn)業(yè)鏈分析.pdf》資料免費下載
    發(fā)表于 05-19 17:25 ?595次下載
    云南省| 兴义市| 北票市| 莱阳市| 南宫市| 敖汉旗| 河东区| 宁安市| 桃园县| 拜泉县| 林州市| 黄平县| 凤山县| 洪洞县| 蕲春县| 乡宁县| 米脂县| 铜陵市| 化德县| 轮台县| 长海县| 尚义县| 进贤县| 许昌市| 萍乡市| 志丹县| 吉首市| 朝阳市| 麻栗坡县| 姜堰市| 泉州市| 达日县| 乌兰浩特市| 霍邱县| 永吉县| 湟中县| 黄平县| 北安市| 云梦县| 昌平区| 余江县|