MTSC2025 第十四屆中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)(上海站):AI賦能代碼質(zhì)量提升-AI編碼及全流程智能代碼審核_第1頁(yè)
MTSC2025 第十四屆中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)(上海站):AI賦能代碼質(zhì)量提升-AI編碼及全流程智能代碼審核_第2頁(yè)
MTSC2025 第十四屆中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)(上海站):AI賦能代碼質(zhì)量提升-AI編碼及全流程智能代碼審核_第3頁(yè)
MTSC2025 第十四屆中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)(上海站):AI賦能代碼質(zhì)量提升-AI編碼及全流程智能代碼審核_第4頁(yè)
MTSC2025 第十四屆中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)(上海站):AI賦能代碼質(zhì)量提升-AI編碼及全流程智能代碼審核_第5頁(yè)
已閱讀5頁(yè),還剩48頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

MTSC

2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)TESTINGSUMMITCONFERENCECHINA2025質(zhì)

效革新

·智領(lǐng)未來(lái)2025/7/121

上海喜來(lái)登由由大酒店

主辦方:

TesterHeme上海站AI賦能代碼質(zhì)量提升——AI

編碼及全流程智能代碼審核楊曉光質(zhì)效革新

·

智領(lǐng)未來(lái)

主辦方:TesterHeme中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)園TESTINGSUMMIT

CONFERENCE

CHINA2025

站MTSC

2025整體應(yīng)用場(chǎng)景研發(fā)階段IDE

Al編碼助手質(zhì)效革新

·

智領(lǐng)未來(lái)提測(cè)merge

requesteventsAl增量代碼審核合入k8s測(cè)試環(huán)境日志采集日志+代碼

Al

聯(lián)合排障線上代碼問(wèn)題模塊

Al問(wèn)診MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)主辦方:TesterHeme集成階段測(cè)試階段上

站Part

1Al編碼助手MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme上

站CodeBuddy[騰訊云]免費(fèi)Al編碼主要應(yīng)用工具Cursor20美元/人/月Copilot10美元/人/月MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme上

站raft

Code

Review共找到2個(gè)代碼問(wèn)題為所選的代碼生成單元測(cè)試CodeBuddyDetail.vue

news-app/sLine:138-146當(dāng)前AP

調(diào)用使用硬編碼的URLviews建議將API以下是為corvert.py

生成的單元測(cè)Python/項(xiàng)基礎(chǔ)路徑抽取為常亮或配置項(xiàng),便于后期維護(hù)

和修改名稱Line:149

順要on報(bào)交

論成地期直措演用

feschcDTnei0騰訊云代碼助手簡(jiǎn)介工程理解智能體

Plus@Codebase,AI

輔助理解項(xiàng)目工程,提供精準(zhǔn)的代碼建議和解決方案代碼補(bǔ)全

Plus基于上下文理解以及編輯行為,預(yù)測(cè)下一個(gè)改動(dòng)點(diǎn),同時(shí)給出相應(yīng)推薦,提升編碼效率1

1/

創(chuàng)建

scfctientconst

scf=new

tencentcloud.scf.v2023.client(credential:fsecretId,ecretKeyCodeBuddy上述代碼是一個(gè)

p分,這個(gè)文件通常npm

或yarn

安裝依lockjson文件的目的看起來(lái)這里面的文好、我們可以從頭智能問(wèn)答基于海量技術(shù)文檔進(jìn)行訓(xùn)練,支持團(tuán)隊(duì)自定義知識(shí)庫(kù)管理和模型切換MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)TESTING

SUMMIT

cONFERENCE

CHINA

2025單元測(cè)試自動(dòng)解析代碼上下文,精準(zhǔn)識(shí)別依賴關(guān)系,并注入Mock數(shù)據(jù),顯著提升單測(cè)有效性及覆蓋率質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme代碼評(píng)審支持代碼批量評(píng)審commitmessage前codebase

分析當(dāng)前代碼上海站生成解釋代碼|代碼修復(fù)|生成文檔|生成測(cè)試|代碼評(píng)審|關(guān)閉

方法級(jí)快捷操作"""使用

grep

查找包含目標(biāo)方法的

Go

"

”try:result=

subprocess.run("grep","-E",#啟用擴(kuò)展正則表達(dá)式"-ril",#-rilE:r遞歸搜索,-i

忽略大小寫(xiě),

-1只輸出文件名(忽略:后面的匹配rf"func\s+

{self.interface}

\(",

#

匹配1個(gè)或多個(gè)空格self.local_dir],capture_output=True,text=True,check=True)files

=result.stdout.strip().split("\n")return

[fforfinfiles

iff.endswith(".go")]exceptsubprocess.CalledProcessError:return

[]

結(jié)合注釋自動(dòng)補(bǔ)全代碼#解析

Go

文件,提取目標(biāo)函數(shù)的完整方法體""“解析

Go文件,提取目標(biāo)函數(shù)的完整方法體””“try:with

open(file_path,“r”,encoding="utf-8")as

f:Lines

=f.readlines()Al編碼應(yīng)用案例文件E編輯(舊選擇(S查看V)轉(zhuǎn)到(G

運(yùn)行(B終端①

幫助H←

→騰訊云A1代碼助手對(duì)話

測(cè)

試info.txt

search_method_in_repo.py9+,M×對(duì)話

評(píng)審

script>search_method

in

repo.py>4LogAnalyzerPSE:\GitProject\CI_Script>search_method_inp

apy

當(dāng)前文件分會(huì)話支持引用項(xiàng)目/文檔/文件擴(kuò)展知識(shí)庫(kù)及上下文@智能體

tencentdeepseek-r1package/interface,避免參數(shù)傳遞3.方法整合:將原有函數(shù)重構(gòu)為類(lèi)方法,優(yōu)化方法命名和訪問(wèn)

權(quán)限

(私有方法用_前綴)4.代碼精簡(jiǎn):合并重復(fù)邏輯,使用海象運(yùn)算符等Python特性簡(jiǎn)

化代碼5.路徑處理優(yōu)化:修復(fù)原代碼中字符串格式化問(wèn)題,使用f-

sting6.流程控制:將主流程整合到analyze方法,保持業(yè)務(wù)邏輯連

貫性代碼通過(guò)類(lèi)封裝實(shí)現(xiàn)了更好的模塊化,后續(xù)可以方便地?cái)U(kuò)展Python

Apply…

-1rbreak

#找到第一個(gè)有效結(jié)果即停止print(f"Notfoundin

[file}")四MTSC2025

c2025會(huì)def

extract_function_from

file(self,file

path):Alt+I

生成代碼,ctrl+I

打開(kāi)對(duì)話8889輸出調(diào)試控制臺(tái)終端端口

GITLENS質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme656667686970717273747576777879808182838485868764

subprocess.run(["git","pull"],check=True,cwd=self.local_dir)置和業(yè)務(wù)邏輯封裝到LogAnalyzer類(lèi)中例變量存儲(chǔ)當(dāng)前處理的der

grep_method_in_repo(seif):1.類(lèi)封裝:將全局2.狀態(tài)管理:使用實(shí)當(dāng)前項(xiàng)目選擇知識(shí)庫(kù)

選擇單文件上海站342343344345346347348349350351352353354355356357358359<divclassName={classNames(styles.rankcol,styles.rankCount)}>

I

itve)m.accept_co

unt}<div

className={classNames(styles.rankCol,styles.rankRate)}>{item.accept_rate}</div></div></div></div></div>:(<divclassName={styles.emptyBox}><divclassName={styles.empty}></div><divclassName={styles.word}>暫無(wú)排行榜數(shù)據(jù)</div></div>return<div

className={styles.container<Topselectcalendarselect=searchword={searchword}問(wèn)題

輸出

調(diào)試控制臺(tái)

終端E:\projects\testdev\feedbackplat>gitpushCountingobjects:40,done.Delta

compressionusing

up

to20threads.Compressingobjects:108%(37/37),done.Mritingobjects:100%(40/48),11.50KiB|356.00KiB/s,done.Total

40(delta

28),reused

e(delta)remote:

::To

a:

i

k

r

y

e

i

:uests/new?merge

request%5Bsource_branch%5D=TASK-194234remote:To:activity/feedbackplat.git73801e7..35b7997

TASK-194234->TASK-194234qtesrimerge4234,vt/9a1dbackpTASKfeor/fvitstacquerneugugometapehttcreettremoremoAl編碼應(yīng)用案例

MTSC2025張拳22100.0%楊曼張拳1黃映芬4250.0%11100.0%11100.0%李陽(yáng)杰100.0%我明白了,需要修改排行榜的展示樣式,將其改為一個(gè)整體的卡片,而不是每條數(shù)據(jù)都是獨(dú)立的卡片。我需要:1.修改RankingList組件的結(jié)構(gòu),將所有數(shù)據(jù)放在一個(gè)卡片內(nèi)2.調(diào)整相應(yīng)的樣式,確保表頭和數(shù)據(jù)行的樣式正確3.保持?jǐn)?shù)據(jù)展示的清晰和美觀讓我修改FeedbackDashboardjs中

的RankingList組件。△不安全

05:4430/#/workOrderQywxDash?opPerson=dylanzhang

□private

M

MTP-敏捷產(chǎn)品研…

□sentry

集團(tuán)基建尺寸:iPhone

XR414

×89692%

已停用節(jié)流模式callback排行榜使用了與現(xiàn)有反饋列表相同的卡片式布局,保持了整體UI的

。edbackplat\srcviewslworkOrderlfeedbackDashboard\FeedbackDashboardjs√

2個(gè)文件

全部接受JS

FeedbackDashboardjs9

FeedbackDashboardmodulescss

·@is

FeedbackDashboardis×

引用源碼

請(qǐng)輸入你的任務(wù)24h

7天

自定義苗

Q

索個(gè)人反饋

整體反饋排行榜反饋人反饋數(shù)采納數(shù)采納率SrC>views>workorder>feedbackDashboard>JS

FeedbackDashboardjs>

[constFeedbackDashboard=()=>{298

constRankingList=()=>

{{rankData.map((item,index)=>(3.完成H5

頁(yè)面改造(增加排行榜tab

頁(yè))排行榜和列表不一樣,整體展示為一個(gè)卡片,而不是分卡片展示中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)TESTING

SUMMIT

cONFERENCE

CHINA

2025質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme間

FeedbackDashboard>

回RankingList>

rankData.mapo2.Al批量修改代碼<1>src/viewslworkOrder/feedbackDashboard.

…+30

-28

√JS

FeedbackDashboardjs

8

FeedbackDashboard.module.scss

M

JS

FeedbackDashboardjs:變更前

變更后(Editable)M1.描述需求上海站>24pCodeBuddy全部拒絕如何讓AI更懂業(yè)務(wù)?MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)基礎(chǔ)開(kāi)發(fā)20%日常開(kāi)發(fā)工作量占比業(yè)務(wù)開(kāi)發(fā)80%質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme上

站MCPServer「智能廚房管家」“做一份番茄炒蛋,少放鹽”理解需求

拆解步驟,切番茄、炒雞蛋協(xié)調(diào)工具

指揮炒鍋、計(jì)時(shí)器協(xié)作記住習(xí)慣

知道上次說(shuō)的少放鹽是指放3克主辦方:TesterHemeMCP

Server

-AI模型的業(yè)務(wù)助理Model

Context

Protocol便于將各種數(shù)據(jù)源/工具/功能連接到AI模型DataSourcesIIIII

CapabilitiesTools

Resources

Prompts質(zhì)效革新

·

智領(lǐng)未來(lái)MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)Q:Server上

站田田

●To

ClientMCP

接口協(xié)議檢索

埋點(diǎn)代碼生成

測(cè)試環(huán)境造數(shù)接口協(xié)議記不住?大量埋點(diǎn)參數(shù)易出錯(cuò)?造數(shù)成本過(guò)高?基于MCP

Server的能力拓展MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHemeMCP應(yīng)用場(chǎng)景上

站應(yīng)用場(chǎng)景1—接口協(xié)議檢索及代碼補(bǔ)全I(xiàn)DECraft會(huì)話用戶問(wèn)題MCPServer分詞處理復(fù)用向量化器生成問(wèn)題向量與知識(shí)庫(kù)矩陣相似度計(jì)算相似度Top結(jié)果代碼推薦及補(bǔ)全MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)TESTING

SUMMIT

cONFERENCE

CHINA

2025離線預(yù)處理知識(shí)庫(kù)YAPI平臺(tái)接口信息文本接口特征中文分詞TF-IDF向量化器生成接口知識(shí)庫(kù)TF-IDF矩陣質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme上海站應(yīng)用場(chǎng)景1—接口協(xié)議檢索及代碼補(bǔ)全

文件(F)

編輯(E)

選擇(S)

查看(V)

轉(zhuǎn)到(G)

運(yùn)行(R)

終端(T)

幫助(H)

9ksgroupactivity

serice

D

□CODEBUDDY

J

cycleBoardeventListenerjava

1,MJ

cycleBoardEventListenerjava:

變更前一變更后(Editable)1.M×

D∨

個(gè)

□Craft

Chat

Code

Review

5Tc>main>java>com>kugou>fanxing>kgroup>activity>serice>event>JcydleBoardEventListeneJjava>(comkugoufanxingfxgroupativityservice.event調(diào)用“魚(yú)聲接口“獲取近30天的貢獻(xiàn)榜,當(dāng)top10

用190

190大NA2會(huì)0255開(kāi)NCE0E試RE2U聯(lián)MM網(wǎng)TcO測(cè)NFSC中TES國(guó)TINMint

roomId

=event.getconsumeMsgDto

()

getRoomId

();long

tokgId=event.getConsumeMsgDto()

.getRealToKugouId();/

/

構(gòu)

案String

text=String.format(format:“%s用戶為%s主播點(diǎn)亮了%s禮物”,

userNcom.kugou.fanxing.fxgroup.activity.service.pojo.dto.msg.CommonMsgDat.typ

e(2)//

體type

可根據(jù)業(yè)務(wù)調(diào)整.text(text).bizId(20001).build();//發(fā)送房間公告

3.

結(jié)合接口協(xié)議及代碼上下文補(bǔ)全代碼commonMsgService.sendRoomCommonRoomMsg(roomId,msg);//新增:檢查主播本月星榜任務(wù)完成情況try//調(diào)用魚(yú)聲接口獲取30天貢獻(xiàn)榜top10Stringurl="https://api.fanxing.com//kugroup/multiparty/partys

Map<string,Object>params=newjava.util.HashMap<>();params.put(key:"roomId",

roomId);params.put(key:"pageIndex",value:1

);params.put(key:"pagesize",value:10);/

/

使

用RestTemplate調(diào)用接口org.springframework.web.client.RestTemplate

restTemplate

=newjava.util.Map<String,object>response=restTemplate.getForobjeurl+"?roomId={roomId}&pageIndex={pageIndex}&pagesize={pagejava.util.Map.class,params);int

roomId

=event.getconsumeMsgDto().getilong

tokgId=event.getconsumeMsgDto()

ge//構(gòu)造文案string

text=string.format("%s用戶為%s

主播com.kugou.fanxing.fxgroup.activity.servic.type(2)

11具

體type可根據(jù)業(yè)務(wù)調(diào)整.text(text).bizId(20001).build

();11

發(fā)送房間公告commonMsgService.sendRoomCommonRoomMsg

(rocServet搜索接口協(xié)議戶的貢獻(xiàn)星幣數(shù)超過(guò)10000時(shí),發(fā)送房間公告,公告內(nèi)容為“主播完成本月星榜任務(wù)”CodeBuddy1.首先需要理解當(dāng)前代碼的功能:

notifyFirstSend

方法目前是在主播首次收到某個(gè)禮物時(shí)發(fā)送房間公告2.任務(wù)要求新增邏輯:調(diào)用魚(yú)聲接口獲取近30天貢獻(xiàn)榜,檢查

top10用戶的貢獻(xiàn)星幣是否超過(guò)10000,如果是則發(fā)送另一個(gè)公告3.需要確認(rèn):魚(yú)聲接口的具體調(diào)用方式(接口URL、參數(shù)、返回值格式)貢獻(xiàn)榜數(shù)據(jù)的處理邏輯新公告的發(fā)送方式(是否復(fù)用現(xiàn)有

commonMsgService)4.從系統(tǒng)信息中看到已連接“魚(yú)聲接口知識(shí)庫(kù)MCPserver,

以使用其search_interface

工具查詢相關(guān)接口信息5.修改步驟:if(response!=null&&“0”.equals(response.get(key:"code"))){java.util.Map<String,Object>data

=(java.util.Map<String,java.util.List<java.util.Map<String,object>>rankList=

(ja//

.計(jì)算top10

用戶總星幣數(shù)inttotalcoin=rankList.stream()

if(

I

imp!

n{fo.

getName();

if(si

f

mple!

)fo

.getName();改造notify一段iftInnullsiogiftNamempleGift981818I)leGift=

nullsogiftNamesimpleGift189188新增并d方代First引>Called

MCP魚(yú)聲接口知識(shí)庫(kù)MCPserver

(search_int◎1.根據(jù)接口查詢結(jié)果,我們找到了獲取30天貢獻(xiàn)榜的接口:接口URLdinhmhicanien'191192193194195196197198199200201202+203+204+205+206+207+210+··質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme然

notifyFirstSend

方法,添加新邏輯需要確保新邏輯不影響原有功能191192193194195196197198199200201221+

222+223+225+2.

自動(dòng)調(diào)用MCP首先查詢魚(yú)聲接口知識(shí)庫(kù)獲取貢獻(xiàn)榜接口信息上海站拒絕出

下····

·常1個(gè)文件Pfxgroup_activityservice

口日□J

cycleBoardeventListenerjava

1.M

JeventTracker.java2,U

×JSservice.js

tonytestpy9+{}

Craft_mcp_settings.jsonSFC>main

group>activity>service>event>JeventTrackerjava>4sEventTracker3.生成模版代碼

namesuffix

無(wú)結(jié)果packagecom.kugou.fanxing.fxgroup.activity.service.event;3

public

class

EventTracker

{45

*需求:【鎖屏歌詞頁(yè)】支持自定義樣式-

Android6

*產(chǎn)品:吳鴻琦Bi:tracywu(

)8

*/91011

*目的:統(tǒng)計(jì)鎖屏裝扮頁(yè)點(diǎn)擊數(shù)據(jù)情況12

*鎖屏裝扮頁(yè)點(diǎn)擊時(shí)上報(bào)13

*svar1上報(bào):鎖屏樣式、立即查看、立即使用(自定義圖片最后點(diǎn)完成時(shí)也需要上報(bào))、鎖屏子樣式14

*svar2

上報(bào)點(diǎn)擊的樣式名稱15

*若svar2=祈福祝愿或svar1=

鎖屏子樣式時(shí),

ivar1上報(bào)選擇的子樣式1617

public

final

static

Function

BI_128529_cLICK

=

new

Function(128529,“鎖屏歌詞頁(yè)”,“點(diǎn)擊","鎖屏裝181920

*目的:統(tǒng)計(jì)鎖屏歌詞頁(yè)的點(diǎn)擊數(shù)據(jù)情況21

【20250331新增】22svar1新增:橫屏、裝扮、底部會(huì)員條

232425

*【20240718新增】26

*svar1新增:點(diǎn)擊專(zhuān)輯圖,點(diǎn)擊寫(xiě)真圖,點(diǎn)擊歌詞,滑動(dòng)歌詞2728

*鎖屏點(diǎn)擊時(shí)上報(bào)29

*svar1上報(bào)點(diǎn)擊的按鈕:直播、關(guān)閉直播、K

歌、播放模式、上一首、播放暫停、下一首、收藏、滑動(dòng)解鎖30

*svar2

上報(bào)部分按鈕的多種狀態(tài),

31*播放模式:上報(bào)切換到的對(duì)應(yīng)模式32

*

報(bào)

藏or

取消收藏33

*scid_albumid

上報(bào)當(dāng)前歌曲mixsongid3435

publicfinal

staticFunctionBI_

125826_CLICK

=newFunction(125826,“鎖屏歌詞頁(yè)",“點(diǎn)擊”,“鎖屏歌

36371.發(fā)現(xiàn)eventTrackerjava文件當(dāng)前為空,這是一個(gè)新文件2.

需要?jiǎng)?chuàng)建一個(gè)完整的Java

類(lèi)文件,包含包聲明、類(lèi)定義和生成的埋點(diǎn)代碼3.根據(jù)路徑”sr

c/main/java/com/ku

gou/fanxing/fx

group/activity/service/event/event

Trackerjava",

可以確定包名為"com.kugou.fanxing.fxgroup.activity.service.event"4.

類(lèi)名應(yīng)為EventTracker(

循Java

命名規(guī)范,首字母大寫(xiě))√

1個(gè)文件J

eventTrackerjava

已接受@JeventTrackerjava×請(qǐng)輸入你的任務(wù)default

MCPCodeBuddy1.首先需要理解任務(wù)需求:用戶要求在eventTrakerjava

文件中增加埋點(diǎn)文檔13980的模板代碼2.

根據(jù)MCP服務(wù)器信息,有一個(gè)名為“查詢埋點(diǎn)信息生成模版代碼”的服務(wù)器,其中包含一個(gè)工具"generate-bi-code-from-id",可以通過(guò)文檔docld獲取埋點(diǎn)數(shù)據(jù)并生成Java模板代碼3.需要先確認(rèn)eventrackerjava文件是否存在以及當(dāng)前內(nèi)容,以便確定如何插入生成的模板代碼2.

調(diào)

用MCP

Ser

ver查

點(diǎn)

代碼,然后再修改eventTrackerjava文件

-

二>CalledMCP查詢埋點(diǎn)信息生成模版代碼(generate-bi-code-from-id)◎應(yīng)用場(chǎng)景2—

埋點(diǎn)平臺(tái)打通及模版代碼生成>a

值:128功能操作目出l馬*

歸唇埋點(diǎn)1.成功獲取了埋點(diǎn)文檔13980的模板代碼,現(xiàn)在需要將這些代碼添加到eventTrackerjava文件中2.首先需要確認(rèn)eventTrackerjava文件的當(dāng)前內(nèi)容,以確定如何插入新代碼3.根據(jù)模板代碼風(fēng)格,這些是靜態(tài)常量定義,應(yīng)該放在類(lèi)的合適位置4.

需要檢查文件是否存在以及當(dāng)前內(nèi)容結(jié)構(gòu),以便決定最佳插入位置MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)TESTING

SUMMIT

cONFERENCE

CHINA

2025導(dǎo)出埋點(diǎn)全部展開(kāi)全部收起保存文

件(F)

編輯(舊)

擇(S)

查看(V)

轉(zhuǎn)到(G)

運(yùn)行(R)

終端(T)CODEBUDDYCraft

Chat<1)src/main/java/com/kugou/fanxing/fxgroup/activity/service/event/eventTrackerjava已讀取質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme1.提供埋點(diǎn)文檔id,要求生成代碼增加埋點(diǎn)文檔13980的模版代碼上海站⑧

說(shuō)引用文件

B

userid

listbt描述需求

將這批fanxing

用戶的VIP等級(jí)批量更新為10CodeBuddyi1.任務(wù)分析:需要批量更新fanxing

測(cè)試環(huán)境中的用戶VIP等級(jí)為102.已有信息:·

更新后的用戶ID列表文件:userid_list.txt(現(xiàn)在包含10個(gè)用戶ID)·

目標(biāo)VIP等級(jí):103.

可用工具:fanxing測(cè)試環(huán)境造數(shù)工具中的batch_update_user_vip_level工具4.操作步驟:·

首先需要讀取userid_istxt

文件獲取最新的用戶ID列表●

然后使用batch_update_user_vip_Jlevel工具批量更新VIP等級(jí)<1)userid

listxt

讀取解析文件1.已成功讀取userid_list.txt文件內(nèi)容2.文件內(nèi)容現(xiàn)在包含10個(gè)用戶ID,

每行一個(gè)13.需要將這些用戶ID轉(zhuǎn)換為數(shù)組格式,作為batch_update_user_vip_level工具的輸入i4.目

標(biāo)VIP等級(jí)仍為10·5.確認(rèn)工具可以處理10個(gè)用戶的批量更新

調(diào)用MCP

Server批量造數(shù)390888:Called

MCP

fanxing測(cè)試環(huán)境造數(shù)工具(batchupdateuser_viplevel◎3908883339088834·1.確認(rèn)工具調(diào)用成功,所有10個(gè)用戶的VIP等級(jí)已更新為10扌2.操作結(jié)果符合預(yù)期,沒(méi)有錯(cuò)誤或警告390888373.任務(wù)已完成,可以展示最終結(jié)果39088839已成功批量更新10個(gè)fanxing用戶的VIP等級(jí)為10級(jí):輸入關(guān)鍵字,按下回車(chē)搜索我的

所有

用戶資產(chǎn)

賬號(hào)相關(guān)

會(huì)員

主播相關(guān)

禮物相關(guān)

真唱使用次數(shù)(6292次)平臺(tái)id(1:

2:

3:

)

+

狗ID+

修改星幣/唱幣值(逗號(hào)分隔)使用次數(shù)(1238次)設(shè)置賬號(hào)風(fēng)控風(fēng)險(xiǎn)使用次數(shù)(1199次)輸

入kugouid使用次數(shù)(984次)輸

入url或

數(shù)應(yīng)用場(chǎng)景3—

測(cè)試環(huán)境造數(shù)原造數(shù)方式(工具+SQL)MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)SUMMiTcONFERENCE

CHINA

2025現(xiàn)造數(shù)方式(一句話)質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme$_fan_xing_s接口生成

加密后的sign參數(shù)②上海站3908883539088836添加星幣或唱幣②查詢用戶信息②設(shè)置風(fēng)險(xiǎn)②使用手冊(cè)390888383908883239088840已讀取收藏收藏收藏收藏GoGoGoGo10分析用戶請(qǐng)求意圖理解/拆分檢

索MCP構(gòu)造參數(shù)執(zhí)

行tools清晰明確各司其職錯(cuò)誤反饋if

not

user_ireturn

{"status":"failed","message":"

戶ID

列表不能為空"}if

not

isinstance(user_ids,list):參數(shù)

類(lèi)型及值范圍校驗(yàn)return{"status":"failed”,"message":

“用戶ID

必須為list[int]"}if

not

isinstance(level,int)or

level<0:return

{

"status":"failed","message":"VIP

等級(jí)必須是非負(fù)整數(shù)“}try:

結(jié)構(gòu)化的錯(cuò)誤信息connectinn

dcnnecti王

萬(wàn)

:TesterHeme@mcp.tool

()de

batch_update_user_vip_

level(user

_ids:list[int],level:int)

->dict:

批量更新fanxing

測(cè)試環(huán)境用戶

VIP

等級(jí)CodeBudd

::

m

u

i:

:

P

等級(jí)

完備的注釋我將讀取

useri

:return:操作結(jié)果信息等級(jí)為2。設(shè)置

的VI用戶ID要dsvereelsparamparaMCP

市場(chǎng)

已安裝fanxing

測(cè)試環(huán)境造數(shù)工具_(dá)user_currency

update_user_vip_levelbat

_update_user_vip_level

create_usertch_update_user_currency_level魚(yú)聲YAPI

接口查詢工具search_interface_yusheng繁星YAPI接口查詢工具search_interface_fanxing在fanxing庫(kù)的t

user

表中插入100條模擬數(shù)據(jù)字段要求如下:XXXMCP

Server準(zhǔn)確性提升策略MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)TESTINGSUMMiTcONFERENCECHINA2025試圖構(gòu)建一個(gè)大而全的MCP

Server<1>userid_list.>fanxing

測(cè)試…

…參數(shù)格式不正確,數(shù)格式并再次嘗……

…>fanxing

測(cè)試已成功將

useri結(jié)果為:批量更幫我造點(diǎn)用戶數(shù)據(jù)放到數(shù)據(jù)庫(kù)里缺乏注釋

無(wú)錯(cuò)誤處理質(zhì)效革新

·

智領(lǐng)未來(lái)上海站活躍用戶數(shù)量①活躍用戶總數(shù)116●VSCode

JetBrainslntelliJIdea●JetBrainsGoLand

●AndroidSti?CodeBuddy

應(yīng)用情況——使用人數(shù)MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)CodeBuddy

活躍人數(shù)116主辦方:TesterHeme質(zhì)效革新

·

智領(lǐng)未來(lái)對(duì)話活躍用戶數(shù)量①113補(bǔ)全活躍用戶數(shù)量①106活躍用戶數(shù)量

①116上

站CodeBuddy

應(yīng)用情況——應(yīng)用效果近3成新增代碼由AI補(bǔ)全,累計(jì)10W+

行總新增行數(shù)

①344,496補(bǔ)

數(shù)o28254744%11061017%8156212%460997%

補(bǔ)全采納行數(shù)17786

2%

101,32612978

2%12916

29%●lua●go●

java●

javascript

python●kotlin●

vue●cpP1/7●

luago●

java●

javascriptpython●

vue●

kotlin●

javascriptreact▲

1/9MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme補(bǔ)全采納行數(shù)①101,326補(bǔ)全生成行數(shù)①633,3903327028462144055360479228342633169232%28%14%5%4%2%2%1%補(bǔ)全采納率(按行)①16.00%補(bǔ)全生成率(按行)29.41

%TESTING

SUMMiT

cONFERENCE

CHINA2025上海站補(bǔ)全生成行數(shù)①13252

2%Part2Al審核助手MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme上

站前去圍觀西游篇?翻卡得禮物1888星幣/次

11.4萬(wàn)9月12日累計(jì)15例用戶反饋九層寶塔線上活動(dòng)頁(yè)面異常原因:隨著業(yè)務(wù)量上漲,有性能隱患的5QL

出現(xiàn)慢查導(dǎo)致當(dāng)層已全開(kāi)禮物池我

的)return

models,nil+

}+//按deckTd分組,每個(gè)分組輸出最新的N條數(shù)據(jù)+func(t*toierUseronorDao)selectGroupByDeckTdAndTopN(platType

int32,activityrd

int32,num

int32)([]*po.ToweruserHonor,error)(sql:="SELECT”+t.tableField()+”FROM”+t.tableName(platType)+"ASeWHEREe.activityId=?AND(SELECT

COUNT(1)FROM"db:=mysq1.NewDb().Raw(sq1,activityId,num).Scan(&models)iferr:=ub.Errut;err!=nil{return

nil,errif

db.RowsAffcted

--e[return

nil,nil}11

returnmodels,nil}//按activityId

和deckId分頁(yè)杳詢,按createTime升序func(t*toweruUsertonorDao)PageselectByActivityrdAndDeckTd(platType

int32,activityd

int32,deckTd

int32,pageNo

int32,pagesize

int32)(

var

mode1s[]^po.IoweruserHonorvar

offset=(pageNo

-1)*pagesizedb;=mysq1.NewDb().Table(t.tableName(platType).Where("deckld=?AND

activityrd=?”,deckrd,activityrd).order("createTime

Asc,if

err:=.ErrUt;err!=nil{return

nil,err}if

db.RowsAffected

--e

〔return

nil,nil}return

models,nil+func(t*towerUserHonorDao)BatchTnsert(towerUserHonorList[]*po,ToweruserHonor,platType

int32,db

*gorm.DB)error{tx:=db.Table(t.tableName(platType)).Create(towerUserHonorList)1f

err:=tx.Error;err!=n11{部分遺漏到線上的問(wèn)題AICR

可有效發(fā)現(xiàn)當(dāng)

dao-tower_user_honor_dao.go在SelectGroupByDeckIdAndTopN方法中,SQL語(yǔ)句中使用了嵌套子查詢,可能會(huì)導(dǎo)致性能問(wèn)題。已采納僅評(píng)論允許合并)太長(zhǎng)不看太長(zhǎng)不著,并允許合并需要改進(jìn)提交評(píng)審反饋,并要求完善后才允許合并完成評(píng)審100

+日均提交MR500

+平均代碼行數(shù)/MRAICR—

破解MR

洪流下的審核困局49互動(dòng)榜第99+名

紅包〉MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)TESTING

SUMMIT

cONFERENCE

CHINA2025質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHemevarmodels[]^po.IoweruserHonor上海站×

MR

Filc

Diff25262829梁館取消2122CICD質(zhì)量報(bào)表

問(wèn)題追蹤

數(shù)據(jù)指標(biāo)會(huì)話管理

項(xiàng)目人設(shè)管理

問(wèn)題二次校驗(yàn)星云workflowqpilot-qpilot-混元-

混元-cr

llamalarge

stadardAICR

整體架構(gòu)應(yīng)用層服務(wù)層模型層prompt管理

敏感代碼過(guò)濾預(yù)置模型GPT

deepseekMTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)TESTING

SUMMiT

cONFERENCE

CHINA

2025質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHemecomment

hookMRevent上海站gitlab2024年Q4數(shù)據(jù)看板AICR數(shù)據(jù)可視化看板覆蓋率/使用率/

采納率等數(shù)據(jù)度量

推動(dòng)持續(xù)改進(jìn)2024年Q2接入星云接入混元、qpilot

模型增加CR問(wèn)題二

次確認(rèn)能力提升模

型拓展能力2024年Q3實(shí)時(shí)對(duì)話支持comment實(shí)時(shí)對(duì)話自動(dòng)關(guān)聯(lián)代碼上下文降低代碼優(yōu)化成本2024年Q1接入C

ICDAICR報(bào)表融CICD看板采納問(wèn)題自動(dòng)

創(chuàng)建bug單推動(dòng)流程化閉環(huán)改進(jìn)2023年M

R

發(fā)

A

I

C

R初步實(shí)現(xiàn)代碼智能化審查,問(wèn)題及建

議展示支持項(xiàng)目粒

度prompt定制MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)TESfiNGSUMMiTcONFERENCECHINA2025AICR演進(jìn)過(guò)程質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHeme上

站AICR

整體使用流程審核概要in-Line

comment實(shí)時(shí)問(wèn)答add

commentGitlabmrevents質(zhì)效革新

·

智領(lǐng)未來(lái)

主辦方:TesterHemeAl服務(wù)D5

星云CICDresultMTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)cONFERENCE

CHINA

2025報(bào)表展示問(wèn)題采納BUG

記錄上

站AICR報(bào)

告Chat

1(4216tokens)摘要信息:本次代碼變更主要涉及兩個(gè)文件,

GuessSongActivityService.java和UserActivityUniqueManager.java。

,GuessSongActivityService.java主

是關(guān)于猜歌活動(dòng)的相關(guān)服務(wù),包括活動(dòng)信息的加載、活動(dòng)時(shí)間的檢查等功能;UserActivityUniqueManagerjava

主要是關(guān)于用戶活動(dòng)唯一性管理,包括保存用戶活動(dòng)、構(gòu)造訂單等功能。問(wèn)

&

:GuessSongActivityService.java1

.(

):

在loadActivitylnfo方法中,startTime和endTime

都是從apolloParamBiz.getGuessSongAcivityStartTime)獲取,可能存在問(wèn)題,應(yīng)該將endTime從apolloParamBiz.getGuessSongActivityEndTime(獲取。修改建議:將endTime的獲取方式改為從apolloParamBiz.getGuessSongActivityEndTime(獲取。UserActivityUniqueManager.java1

.(

):

在getTableName

方法中,存在跨月問(wèn)題,當(dāng)orderTime

跨月時(shí),可能會(huì)導(dǎo)致獲取的表名錯(cuò)誤。修改建議:增加對(duì)orderTime

跨月的處

理邏輯,確保獲取的表名正確。2

.(

):

在save和buildUserActivityUniqueOrder

方法中,存在重復(fù)代碼,可以進(jìn)行重構(gòu)以提高代碼復(fù)用,修改建議:將重復(fù)的代碼提取出來(lái),

形成一個(gè)新的方法,然后在需要的地方調(diào)用這個(gè)新的方法。提升開(kāi)發(fā)自檢能力提測(cè)前recheck降低人工審核成本整體改動(dòng)摘要基礎(chǔ)審查建議Project

Activity

Repository

Pipelines

Graphs

Issues

0

Merge

Requests

13

WikiDiscussion7

Commits③

Changes2基于MR的AI審查助手MTSC2025中國(guó)互聯(lián)網(wǎng)測(cè)試開(kāi)發(fā)大會(huì)TESTINGSUMMITcONFERENCECHINA2025Al-CodeReviewer

@Al-CodeReviewer

commented

5

days

ago(4216

tokens)Al

review意見(jiàn)如下:質(zhì)效革新

·

智領(lǐng)未來(lái)主辦方:TesterHemeDeveloper

面上海站TASKMT□fxgov①start代碼檢測(cè)服務(wù)部署M開(kāi)始冒煙副測(cè)試驗(yàn)收士代碼終審士合入集成endAICR高優(yōu)先級(jí)問(wèn)題:2-199177_hide_activityASK-

199177【玩法同步】九層支持隱藏

…git:fxgroup_revenue_activityx產(chǎn)品未驗(yàn)收MR1.6

min2.2min單元測(cè)試57

sec

依賴掃描0

sec4.7hour2.2

day接口自動(dòng)化46

sec

漏洞掃描2

sec⑧測(cè)試通過(guò)暫不發(fā)布單元通過(guò)率:100%接口通過(guò)率:100%

通用阻斷:0定制阻斷:0健康度:100.0×

MR

File

Diff_revenue_activity

MR!99services/tower/card_service

goCHANGED問(wèn)題1017

10171018

101810191019@@-1017,9+1017,9@@func

GetConfig(req*req.ConfigReq,client*fxcontext.ClieRankTabList:RankTipList:WidgetTabList:rankTabList,rankTipList,widgetTabList,確認(rèn)并采納后對(duì)應(yīng)問(wèn)題將作為你的CR成果相關(guān)貢獻(xiàn)量將展示在QEM平臺(tái)10201020RolePopupswitch:tower.GetRolePopupSwitch(),RolePopupSwitch:true,全部services/tower/card_sevice.go10211022LightSwitch:TempTabSwitch:TempTabSwitch:true,tower.GetLightUserSwitch(client.KgId),tower.GetTempUserSwitch(client.KgId),edis使用時(shí),'IncrBy和'Expire未進(jìn)行錯(cuò)誤處理,可能會(huì)導(dǎo)致異常情況下數(shù)據(jù)不一致,應(yīng)對(duì)這兩步操作進(jìn)行適當(dāng)?shù)腻e(cuò)誤檢查和處理。r采納

不是問(wèn)題102310241025215221532154}@@-2152,6}return

data,nil+2152,25

@@func

afterDrawCard(activityInfo

*vo.TowerActivityconfig,//判斷指定輪次開(kāi)關(guān)if

!tower.GetclearRoundAssignSwitch()I|utils.Contains(tower.GetAssi采納

不是問(wèn)題采納問(wèn)題自動(dòng)提Bug2155215621572158215921602161216221632164216521662167216821690ymd:=uti1s.TimeToYmd(uti1s.CurrentsecondTime())ratio

:=tower.GetPublicChatAllRatio()keyTpl,tt1:=constant.GetRedisKeyInfo(constant.ChatRatio)

//按天拼接keyincrKey:=fmt.Sprintf(keyTpl,ymd)val,err:=redis.RedisClusterclient.IncrBy(context.Backgrounif

err

!=nil

{//降級(jí)val=utils.RandomInt64(helper.TailRange)+ratio}else{redis.RedisClusterclient.Expire(context.Background(),

}//遍歷減去1直到ratio次后生成tailroomTails

:=make([]int32,0)fori:=int64(1);i<=ratio;i++{roomTails=append(roomTails,int32((val-i)%helper.Ta}在GetHonorList函數(shù)中存在過(guò)深的代碼嵌套,代碼嵌套層數(shù)超過(guò)了4層,需要進(jìn)行代碼重構(gòu)以降低代碼復(fù)雜度。采納

不是問(wèn)題tower_config.go未處理JsonStringToobject轉(zhuǎn)化函數(shù)可能發(fā)生的錯(cuò)誤。如在GetCardupgradePopupConfig0,GetLightList(platType

int32,activityld

int32),GetCardsta

進(jìn)行處理的邏輯,如果在運(yùn)行

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論