版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MTSC
2025中国互联网测试开发大会TESTINGSUMMIT
CONFERENCE
CHINA2025质
效革新
·智领未来2025/7/121
上海喜来登由由大酒店主办方:
TesterHeme上海站Al生成单元测试用例——从手工到智能的测试革命周文海
|
腾讯音乐娱乐集团(TME)质效革新
·
智领未来
主办方:TesterHeme中国互联网测试开发大会园TESTINGSUMMIT
CONFERENCE
CHINA2025站MTSC2025项目背景技术架构与案例分享实践效果常见问题与解决方案总结与展望目录CONTENTS0102030405MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未来主办方:TesterHeme上
海
站PART01项目背景MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未来主办方:TesterHeme上
海
站车载SDK
业务痛点
QQ音乐开发者平台3最佳实践4更新日志-V3.3.0-V3.2.3-V3.2.0-V3.1.10-V3.1.9-V3.1.4-V3.1.0
发布节奏快
质效革新
·
智领未来,
畅听QQ
音乐
就用QQ浏览器39东四环中路辅路11.9公里22分钟88
15:22到达播放场景复杂dependencies
{//添加gradle7.1.3
依赖(根据业务需求可升级)classpath
'com.android.tools.build:gradle:7.1.3'//添加sdk
openapi-sdk-gradle-plugin依赖,version请参考更新日志,获取最新版本号classpath"com.tencent.qqmusic.openapi:openapi-sdk-gradle-plugin:${version}"}}2
、在
主
module
的build.gradle
文件中应用
openapi-sdk
插件依赖:SDK
形式交付主办方:TesterHemeapplyplugin:'com.android.application'
//应用openapi-sdk
插件apply
plugin:'openapi-sdk'dependencies
{}MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA2025上海站维护困难○Al
生成单元测试是测试左移理念的规模化实践,通过大模型实现“代码即测试”的自动化闭环质效革新
·
智领未
来
主办方:TesterHeme高成本占用研发资源代码能力要求高易出错覆盖率低低成本快速生成低代码覆盖更全面格式统一易维护传统单元测试
vsAl生成单元测试传统手工单测AI生成单测MTSC2025中国互联网测试开发大会TESTINGSUMMIT
CONFERENCE
CHINA
2025上
海
站Al生成单测优势场景展示TestCase:
音频焦点被抢占,播放暂停Al补充用例场景:焦点丢失暂停
暂停
暂停
暂停MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025发起播放申请音频焦点
→播放资源准备发起播放申请音频焦点创建播放器实例
发起播放质效革新
·
智领未来主办方:TesterHeme焦点丢失发起播放播放中播放结束播放中暂停上
海
站PART02技术架构与案例分享MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未来主办方:TesterHeme上
海
站效果评估代码覆盖率
分支覆盖率
鲁棒性用例管理平台主办方:TesterHeme接口文档Prompt
工程Prompt
组
装
超长文本调优RAG多Query改写
增强检索Embedding-Query-Retriver-Reranker-Reader模型层评估层用例管理质效革新
·
智领未
来LLM腾讯混元编译通过率输入源前置处理检索增强代码片段数据去噪内部知识库测试用例
接口文档策略配置自定义策略
其他参数配置MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025功能用例安全策略技术架构其他开源模型
兜底策略数据治理数据简化代码库上海站实施过程
1.
提示词工程角色+步骤+要求+示例+输出项优化Prompt,
提升大模型指令遵循度
3.
流程调优结合业务需求,对流程进行精细化调优优化AI输出准确率,单测覆盖率等2.业务知识库搭建单元测试用例示例,业务文档
构建知识图谱,让AI了解业务需求4.
持续集成与CI/CD流程结合
减少人工介入主办方:TesterHemeMTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未来上
海
站YES
是否超长
NO语义分块+代码分块设置锚点输出多轮对话Prompt
输出Prompt主办方:TesterHeme(角色)你是一名资深的软件开发测试工程
#
步
骤
#
师步骤1-对测试代码内容进行代码分析步
骤
2
-
XXXXXXX#
要
求
#要求1-用例标题test开头要求2
-xxxxxX#
示
例
##接口说明##测试代码#MTSC2025中国互联网测试开发大会Prompt
组装兼容超长TokenQueryPrompt
格式化组装1.
标准格式化2.精准描述3.
关键要求可在每次指令补充简短的指引4.
模型优势引导,代码生成方向5.关键要求从难到易提示词工程基础结构示例车载SDK
测试专家,擅长从代码中挖掘厂商定制化问题。质效革新
·
智领未来优化建议上
海
站业务知识库搭建业务知识库质效革新
·
智领未来播放功能用户身份权限管理本地数据其他内部依赖第三方依赖状态流基本逻辑MOCK
偏好框架偏好基础模块分类业务常识自定义逻辑文件结构与格式标准化个性化内容单独存储增加强专业性近义词关键词提取分类细致化MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025主办方:TesterHeme上
海
站音质音效
三方API精准定位知识库内容
推导复杂场景链路业务知识库搭建:分类细致化帐号管理
上层接口中间逻辑层底层系统APIMTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025网络请求歌曲播放按构建层级关系分类按功能模块分类质效革新
·
智领未来主办方:TesterHeme上海站3.Embedding优化采用自研的lucy-Embedding-large
模型,在中英文混
合材料及大文本上
的处理能力上有显
著提升,适配项目1.数据处理多模态处理,支持多种格式输入,包括但
不限于代码块、图片、
pdf。Qpilot-code基于开源模型二次调优,具有更好的代码生成、中文问答能力。
支持64K长Token。结合关联上下文、重排/合并内容、低
分过滤、多轮对话
优化等方式,将召
回率提升至95%。RAG优化:
O
QPilot平台方案4.查询优化2.模型微调MTSC2025中国互联网测试开发大会质效革新
·
智领未来主办方:TesterHeme0301场景。上海站全流程自动化持续交付流水线Git提交至特定分支&执行00MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未来主办方:TesterHemeAl大模型二次修复代码组装&审查缺陷自动提单生产测试报告本地运行校验AI单测大模型Prompt处理Git
MR提交发布上架风险管控数据处理上海站PART
03常见问题与解决方案MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未来主办方:TesterHeme上
海
站代码覆盖率不足?
AI用例筛选、去重、管理?Al输出结果准确率低?MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025Al输出的用例不足?02010403常见问题质效革新
·
智领未来主办方:TesterHeme上
海
站Prompt
精细化管理使用模块化控制,确保每个模块通过RAG召回的数据符
合预期,针对每个模块进行
调优处理,确保通用模块召
回准确率95%以上。针对不同的测试场景提前固化生产策略、测试框架、代码规范。例如:·
代码:代码分析工具·用例:引导关键信息提取·单测框架:Junit+MockkMTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025
增加样例使用Few-shot
prompt或增加输出模版,增强大模型对需求的理解。输出准确率提升固化场景质效革新
·
智领未来主办方:TesterHeme上海站Al输出用例不全为以下函数设计单元测试用例:override
fun
setPLayMode
(@PlayerEnums.Mode
a:Int):Int
{if
(MusicPlayerHelper.getInstance().
isRadi
oif
(a==Mode.LISTIla==Mode.ONE_NOT_REPEAT↓a==Mode.ONE){1/}
else
{return
PLAY
ERR
UNSUPPORT}}returnPlayerCommandDispatcher.pushCommand(commandName:
"***")MusicPlayerHelper.getInstance().
playMode
=aPLAY
ERR
NONE1.确定入参2.确定条件分支3.确定断言MTSC2025中国互联网测试开发大会TESTINGSUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未来主办方:TesterHeme上
海
站}结束根据历史用例学习用例设计规范,及准确断言方式主办方:TesterHeme结束
确认结果无编译报错质效革新
·
智领未来常规LLM
思维链:开始
分析代码逻辑优化后思维链:开始
分析代码逻辑根据函数调用
设计断言根据入参设计用例公共变量变更顺序多线程混合操作公共方法组合设计根据入参设计用例确定条件分支确定公共变量确定异步场景确定公共方法确定条件分支参数组合测试状态时序测试高并发测试命令交叉测试思维链优化:提升用例设计广度MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025上海站车载场景专项优化:提升用例设计深
度定制化ROM模拟各车载的系统普遍存在Rom定制化开发,需要针对关键
ROM
API进行健壮性模拟测
试。车载的网络环境一般采用车企内部的网络架构,可能存
在个别网络协议不支持等问
题。车载场景区别于手机测试,需要考虑多输出源的场景,
每个输出源都需要进行参数
定制化。车载SDK
需要对接的厂商很多
,各个
厂
商
使
用
的
Android
版本都需要兼容。Android版本覆盖网络环境模拟副驾场景MTSC2025中国互联网测试开发大会质效革新
·
智领未来主办方:TesterHeme上海站车载定制化ROM
场景案例android.content.ServiceConnection(主要用于本地管理、跨进程通信的基础API)正常情况下执行流程:bindService调用
系统创建服务
绑定回调可操作服务车载ROM
可能的场景:最终Mock的场景List//正常绑定成功arrayOf(
"Normal
bind
success",true,true,false,false),//绑定失败arrayOf(
"Bind
failed",false,true,false,false),//
无回调arrayOf(
"No
callback",true,false,false,false),//回调超时arrayOf(
"Callback
timeout",
true,true,true,false),//绑定过程抛出异常arrayOf(
"Bind
with
exception",false,true,false,true)主办方:TesterHome白名单管理策略内存优化策略严格的进程管理策略非内部白名单内存资源紧张系统资源紧张丢弃绑定请求延迟回调资源强制回收MTSC2025中国互联网测试开发大会TESTINGSUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未
来上
海
站用户操作:如歌单-播放失败是否成功成功异常记录正常记录立即上报抽样上报异常分析&持续监控用户路径解析Al单测用例生成复现用例生成输出用例SDK
接口OPI
接口OPI
接口描述渠道详情(Top3)总上报次数reportRecentPlayLongAudiofcg_music_custom_report_play_recently.fcg上报最近播放长音频338getOperationslnfo252fetchJustListenRankfcg_music_get_free_song_base.fcg获取免登录专区歌曲列表77fetchJustListenRadiofcg_music_custom_get_radio_list_free.fcg获取随便听听电台列表,返回用户可以免费听的电台列表38fetchCollectedSinger21fetchNewAlbumsByAreafcg_music_custom_get_new_album_area.fcg获取新碟(新专辑)推荐的地区分类信息17车载线上数据用例生成:结合真实场景补充用例客户端
Monitor
监控后台中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025MTSC2025质效革新
·
智领未来主办方:TesterHeme上海站@ParameterizedTest@MethodSource("comm.UserAPImplLMethodSource.FetchGreenMemberInformationTests#apiResponses")fun'test
fetchGreenMemberInformation
with
parameters`(case:comm.Case){//假设存在Login
方法,进行登录态注入
缺少前置条件注入信息Login(case.login)//准备模拟响应val
mockResponse=JsonResponse(GsonHelper.toJsonObj(case.input))//Mock
网络请求mockkObject(NetworkClient::
class
)coEvery{...}returns
mockResponse//执行测试userAPIImpl
.fetchGreenMemberInformation{resp
->//验证响应assertTrue(resp.isSuccess())when(case.
expected
){//假设存在isVip
可以判断VipType
值
缺少断言信息VipType.SUPER_VIP->assertTrue(resp.
data?.isVip()==
true)VipType.NONE
->assertTrue(resp.data?.isVip()==false)else
->fail(message
:
"Unexpected
vip
type")关键数据缺失·隔离依赖:引导通过Mock
方式来
完成依赖隔离。·补充样例:补充相似的通用能力注入样例
。·补充需求文档:
结合接口文档,
确认断言方法。单测覆盖率提升:关键数据补充MTSC2025中国互联网测试开发大会TESTINGSUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未
来主办方:TesterHeme上
海
站单测覆盖率提升:异步场景处理MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA2025overridefunsetPlayMode(@PlayerEnums.Modea:Int):Int{if
(MusicPlayerHelper.getInstance().isRadio){if(a==Mode.LISTIla==Mode.
ONE_NOT_REPEATIla
==Mode.ONE){//}
else
{return
PLAY
ERR
UNSUPPORTreturn
PlayerCommandDispatcherl.pushCommand(commandName:"***"){异步场景处理:
引入事件溯源机制—精准验证异步指令生命周期、操作时序,便于验证最终一致性。质效革新
·
智领未来
主办方:TesterHemeMusicPlayerHelper.getInstance().PLAY
ERR
NONEplayMode
=a异步赋值上海站播放流程登录流程系统交互定位应用交互通知AndroidTest负责各模块流程畅通,保障函数/应用之间扭转稳定。主办方:TesterHeme状态时序并发Unittest负责处理单个函数的异常逻辑分支,保障函数内部逻辑自洽。质效革新
·
智领未来单测覆盖率提升:
AndroidTest
补充覆盖UnittestAndroidTestMTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA2025自动化异常触发等价类边界值参数组合异常分支上
海
站Al单测用例一结构化数据一
数据查重
数据脱敏
待执行队列
用例库生成……
…AI模型再训练…
…用例管理平台CI/CD流程参数化框架执行
→结果评估分析
代码集成@ValueSource(ints={1,2,3
void
testWithValueSource
(int})argument){assertTrue
(argument
>0
&&argument<4);}用例数量爆炸式增长MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未
来主办方:TesterHeme参数化测试用例管理@ParameterizedTest拉取用例上海站m45PART04效果展示MTSC2025中国互联网测试开发大会TESTING
SUMMIT
CONFERENCE
CHINA
2025质效革新
·
智领未来主办方:TesterHeme上
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 楼板裂缝加固工程施工设计方案
- 施工现场临时用电专项施工方案
- 工程管理总体目标
- 通风空调工程施工方案
- 便秘评估与管理指南
- ACCAHA高血压管理指南更新要点
- 企业内部网络规划方案
- 个人车辆买卖合同协议书模板
- 新华人寿附加学生平安 A 款住院医疗保险利益条款
- 2026年中学教师资格考试《综合素质》教育研究方法班级管理题(附答案)
- 2025年及未来5年中国DHA行业市场运营现状及投资规划研究建议报告
- 企业内部控制风险评估报告范本
- 五年(2021-2025)高考地理真题分类汇编:专题03 地球上的大气(全国)(解析版)
- 历年通信工程概预算考试试题与答案
- 航运国际合作机制创新-洞察及研究
- 《老年服务礼仪与沟通技巧》全套教学课件
- 2024年安徽省高级人民法院岗位招聘笔试真题
- 药品追溯管理培训试题(附答案)
- 公务接待基础培训课件
- 部编版六年级下册语文课堂作业(可打印)
- 材料承认管理办法
评论
0/150
提交评论