您的当前位置:首页 > 报告分类 > PDF报告下载

4-赵锐-基于精准测试分析的前后端覆盖率平台落地实践.pdf

编号:152142 PDF 49页 28.30MB 下载积分:VIP专享
下载报告请您先登录!

4-赵锐-基于精准测试分析的前后端覆盖率平台落地实践.pdf

1、基于精准测试分析的前后端覆盖率平台落地实践跨越新科技-CRM部门 演讲人 赵锐2023 深圳站赵锐嘉宾照片 现任高级测试工程师,负责国内、国际报价、运费计算等业务测试,并负责基于精准测试分析的前后端覆盖率平台的建设与推广热爱新技术,擅长在业务测试中发现问题,寻找解决方案并落地专利3项(后端、前端覆盖率相关)跨越新科技-CRM系统2023 深圳站公司介绍跨越速运集团有限公司创建于2007年。拥有“国家AAAAA级物流企业”、“国家级高新技术企业”、“中国物流行业30强优秀品牌”、“中国电商物流行业知名品牌”、“广东省诚信物流企业”等荣誉称号。2023 深圳站目录CONTENTS背景背景01 方案

2、设计方案设计02 后端覆盖率实践后端覆盖率实践03 前端覆盖率实践前端覆盖率实践04 收益与未来目标收益与未来目标05 2023 深圳站01背景2023 深圳站背景1、后端接口影响点评估不全2、前端代码改动导致受影响组件评估不全4、测试场景分析不全导致漏测风险3、上线私夹代码,引发线上风险2023 深圳站背景-案例2023 深圳站02解决方案-前后端覆盖率平台2023 深圳站01后端增量覆盖率解析02后端代码调用分析03前端增量覆盖率解析04前端组件影响分析前后端覆盖率平台-功能模块基于Jacoco和Git计算的后端增量代码覆盖率基于ASM字节码增强工具的方法调用链路分析基于istanbul和

3、Git计算的前端增量代码覆盖率基于Babel编译工具的组件内代码及组件外的调用关系分析2023 深圳站前后端覆盖率平台-技术架构2023 深圳站前后端覆盖率平台-应用场景影响点分析通过对增量方法的覆盖率收集和分析,可以对未覆盖部分进行用例补充,减少漏测风险将口头自测转化为覆盖率进行可视化展示及提测卡点,可以极大减少冒烟BUG,实现对开发人员的自测质量分析对一个迭代内的多版本覆盖率进行持续合并,可以随时对当前迭代内的需求覆盖率进行质量分析通过对前后端代码的静态扫描,获取当前服务内全部的受影响接口或受影响的前端元素和页面,解决了人为分析影响点范围的不全面性用例的查漏补缺 转测卡点迭代覆盖率分析20

4、23 深圳站03后端覆盖率实践2023 深圳站集成sonar扫描-什么是sonar?代码审查工具全称sonarqube,是一款代码审查工具,可以根据定义的规则扫描代码,把问题都暴露出来,通常包含bug、漏洞、坏味道、覆盖率等指标2023 深圳站集成sonar扫描-扫描流程2023 深圳站sonar的问题单元测试覆盖率迭代快,开发需求没有额外时间做单测全量统计覆盖率,无法实现对增量文件进行覆盖率统计2023 深圳站增量代码覆盖率-流程2023 深圳站DIFF引擎2023 深圳站覆盖率叠加引擎-存在的问题修改代码发布后服务端覆盖率频繁丢失,原本测的73%平均覆盖率重新解析后变成了9%,难道又要重新

5、测一遍吗?版本发布2023 深圳站覆盖率叠加引擎-计算流程2023 深圳站覆盖率叠加引擎-计算流程版本1(覆盖了第1,2行代码),覆盖率50%版本2(覆盖了第3,4行代码,新增了两行代码),覆盖率33%通过AST读取源码,将相同的代码覆盖率合并,覆盖率67%2023 深圳站覆盖率叠加引擎-自研覆盖率展示2023 深圳站分支计算引擎-存在的问题?每次都要全量回归一个增量方法,如果该方法分支过多,回归非常耗时,并且其他分支也不是当次修改部分 我只修改了这部分代码可是我要全部回归完啊!2023 深圳站分支计算引擎-分支级别精准未变动代码,无需标记,也无需参与覆盖率计算改动代码,计算所在分支并全部标记

6、通过Git Diff获取增量代码的行号范围通过AST工具提取当前方法体内分支的范围通过范围比较,确定所属的分支,将所属分支全部标记未覆盖2023 深圳站需求归类引擎2023 深圳站需求归类引擎-成果需求1需求所属增量代码需求2需求所属增量代码2023 深圳站需求归类引擎带来的好处人员维度分析质量对当前迭代开发测试人员所属增量代码的覆盖率进行质量复盘迭代维度分析质量通过对需求的归类与迭代关联,可以对某一需求或某一迭代的覆盖率进行质量复盘代码夹带拦截将增量代码按需求维度归类后,能轻而易举发现需求外的夹带代码2023 深圳站代码调用链路分析-存在的问题这个方法我怎么测?我怎么知道被哪些接口调用?我看

7、下代码,应该是被A接口调用了,你看看一来二去的沟通成本手动接口查找的准确性2023 深圳站代码调用链路分析-ASM方法的调用在ASM里均为invoke指令1、静态方法的调用,生成的是invokestatic指令2、接口方法的调用,生成的是invokeinterface指令3、类中的实例方法,生成的是invokevirtual指令4、类中的实例构造器、私有方法和父类方法,生成是invokespecial指令5、动态方法的调用,比如lambda表达式2023 深圳站代码调用链路分析-流程2023 深圳站代码调用链路分析-成果一个方法能快速解析出所有调用接口,如图,一个较核心方法能解析出8个业务调用

8、接口,能极大的对测试用例进行查漏补缺2023 深圳站04前端覆盖率实践2023 深圳站前端覆盖率实践-遇到的问题前端整体比后端多了很多BUG用什么方式去降低前端Bug?2023 深圳站Diff引擎-增量文件Diff2023 深圳站Diff引擎-内容Diff 旧版本新版本Diff版本,显示新旧代码,并不代表是否被覆盖明确组件内代码改动2023 深圳站受益与问题 虽然覆盖率达到要求了,但这就没问题了吗?2023 深圳站组件分析引擎-什么是组件开发 组件化就是把可以复用的、基础的代码封装到一个方法或者代码片段里,在未来需要的地方引入使用。用极少的代码实现之前相同的功能,因此就存在修改了一个组件的代码

9、会影响其他使用了该组件的页面。2023 深圳站组件分析引擎-流程2023 深圳站05收益与未来目标2023 深圳站收益与未来目标来自小伙伴的认可2023 深圳站收益与未来目标重构项目,增量130个,结合接口自动化平台,不仅能对接口起到查漏补缺,也能对接口有效性进行数据量化2023 深圳站未来目标避免闭门造车,质量共建,提供覆盖率、影响点分析开放API支持安卓,IOS端的覆盖率优化解析流程,最大限度提高解析速度平台持续运营,持续收集意见及改进感谢聆听CSDN全球最大的中文开发者社区平台CSDN全球最大的中文开发者社区平台CSDN创立于1999年全球编程类网站排名第7(来源:Similarweb 2023.04)注册用户超过4300万,覆盖90%的中文开发者新媒体矩阵粉丝数量超过3100万超过1000家企业客户和合作伙伴目前公司员工近800名,分布在北京、长沙、上海、深圳、杭州、成都等城市,并在美国硅谷常设办事处旗下品牌旗下品牌专业中文IT技术社区:CSDN.NET多媒体专业出版:新程序员开发者专属移动APP:CSDN APP代码托管协作平台:GitCode代码工具协同平台:InsCodeIT人力资源服务:科锐福克斯丨八爪网络高校IT技术学习成长平台:高校俱乐部

友情提示

1、下载报告失败解决办法
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站报告下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

本文(4-赵锐-基于精准测试分析的前后端覆盖率平台落地实践.pdf)为本站 (2200) 主动上传,三个皮匠报告文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三个皮匠报告文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。
会员购买
小程序

小程序

客服

专属顾问

商务合作

机构入驻、侵权投诉、商务合作

服务号

三个皮匠报告官方公众号

回到顶部