上海品茶

您的当前位置:上海品茶 > 报告分类 > PDF报告下载

2017年基于java代码的覆盖率在饿了么的应用.pdf

编号:92516 PDF 30页 4.14MB 下载积分:VIP专享
下载报告请您先登录!

2017年基于java代码的覆盖率在饿了么的应用.pdf

1、如何有效的使用代码覆盖率提高代码质量目录1 初级使用代码覆盖率2 中级使用代码覆盖率3 高级使用使用代码覆盖率初级使用代码覆盖率 美好生活触手可得CxtyBranchesLinesMethods IF ELSE Case?:&|判定结构的复杂度 独立线性路径条数 行覆盖 方法覆盖主要绩效目标 美好生活触手可得红色红色初级使用初级使用No coverage:No instruction in the line has been executed绿色绿色黄色黄色Full coverage:All instructions in the line have been executedPartial

2、coverage:Only a part of the instruction in the line have been executed 美好生活触手可得初级使用初级使用 美好生活触手可得初级使用初级使用 美好生活触手可得初级使用初级使用会看代码覆盖率的报告,知道各种颜色的含义会看代码覆盖率的报告,知道各种颜色的含义知道那些行(代码)被执行过,那些未被执行过知道那些行(代码)被执行过,那些未被执行过知道通过代码覆盖率,补充测试用例知道通过代码覆盖率,补充测试用例中级使用代码覆盖率 美好生活触手可得中级使用中级使用圈复杂度圈复杂度代码复杂度的衡量标准,程序的可能错误和高的圈复杂度有着很大关系

3、,圈复杂度可以成为编码及重构的重要参考指标最少用例数最少用例数降低圈复杂度的重构技术降低圈复杂度的重构技术覆盖所有情况使用的最少用例数,在系统软件和军事软件有75%的在使用,将圈复杂度维持在10以下有很多实际的和经济的理由,低于10的软件是非常简单且很容易跟踪的,参考 代码大全 重构 改善既有代码的设计 美好生活触手可得中级使用中级使用使用的计算公式是V(G)=e n+2,e 代表在控制流图中的边的数量(对应代码中顺序结构的部分),n 代表在控制流图中的节点数量,包括起点和终点(1、所有终点只计算一次,即便有多个return或者throw;2、节点对应代码中的分支语句)美好生活触手可得中级使用

4、中级使用 美好生活触手可得中级使用中级使用提取函数 将独立业务活模块代码单独封装为函数算法替换复杂的算法可能会导致Bug,满足功能的前提下,使用简单的算法分解条件式复杂的条件表达式封装为函数合并条件式将一系列得到相同结果的条件表达式合并查询函数和修改函数分离-单一职责原则,强调复用性合并重复的条件判断不同的分支有相同的处理,提炼到分之外高级使用代码覆盖率 美好生活触手可得高级使用高级使用跟跟CI的持续集成的持续集成1.自动化的回归并收集代码覆盖率2.查看代码覆盖率的历史记录精准的代码覆盖率精准的代码覆盖率突变测试突变测试1.识别出所有被修改的方法(新增,删除和修改)2.可以有效的查看那些被修改

5、的方法是否被测试到3.通过圈复杂度衡量代码的质量1.为什么要引入突变测试2.如何通过突变测试来衡量单元测试的质量3.突变测试的成本及收益及发展 美好生活触手可得跟发布系统的集成,重置代码覆盖率CI的持续集成的持续集成 美好生活触手可得跟发布系统的集成,获取代码覆盖率CI的持续集成的持续集成 美好生活触手可得跟Sonar的集成CI的持续集成的持续集成 美好生活触手可得跟Sonar的集成CI的持续集成的持续集成 美好生活触手可得识别出所有被修改的方法(新增,删除和修改)精准的代码覆盖率精准的代码覆盖率 美好生活触手可得可以有效的查看那些被修改的方法是否被测试到精准的代码覆盖率精准的代码覆盖率 美好

6、生活触手可得为什么要引入突变测试突变测试突变测试Mutation testing is a technique for systematically mutating source code in order to validate test suites.It makes small changes to a programs source code and then runs a test suite;if the test suite ever succeeds on mutated code then a flag is raised。Unit testing ensures your

7、 production code is relevant.But what does ensure your testing code is relevant?Come discover mutation testing and make sure your never forget another assert again.In the realm of testing,the code coverage metrics is the most often talked about.A line(or a branch)is considered to have been covered i

8、f during test execution this line has been run.However,it doesnt mean that the test has been useful or even that an assert has been coded.Mutation testing creates mutants from code-a deviation from the written code,and test them also.If a test still passes on a mutant,then the test is not relevant 美

9、好生活触手可得如何通过突变测试来衡量单元测试的质量 -https:/ 美好生活触手可得如何通过突变测试来衡量单元测试的质量突变测试突变测试 美好生活触手可得如何通过突变测试来衡量单元测试的质量突变测试突变测试Surviving means changing the source code did not change the test resultIt s bad!Killed means changing the source code changed the test resultIts good 美好生活触手可得突变测试的成本及收益及发展突变测试突变测试不需要改变测试代码引入或者配置一下项目即可 美好生活触手可得通过代码覆盖率改进-分支或者异常覆盖率不够测试策略测试策略 美好生活触手可得通过代码覆盖率改进-返回值的校验测试策略测试策略 美好生活触手可得通过代码覆盖率改进-注解类的测试测试策略测试策略THANKS!

友情提示

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

本文(2017年基于java代码的覆盖率在饿了么的应用.pdf)为本站 (云闲) 主动上传,三个皮匠报告文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三个皮匠报告文库(点击联系客服),我们立即给予删除!

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

专属顾问

商务合作

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

服务号

三个皮匠报告官方公众号

回到顶部