
代码质量监控
文章平均质量分 64
zh_ITRoad
这个作者很懒,什么都没留下…
展开
-
sonar入门指南
开发人员的七宗罪糟糕的复杂度分布文件、类、方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们,且如果没有自动化的单元测试,对于程序中的任何组件的改变都将可能导致需要全面的回归测试重复\\显然程序中包含大量复制粘贴的代码是质量低下的,sonar可以展示源码中重复严重的地方缺乏单元测试sonar可以很方便地统计并展示单元测试覆盖率没有代码...原创 2016-05-25 09:54:43 · 321 阅读 · 0 评论 -
【转】单元测试——基础概念
单元测试——基础概念 前言我们都写过的某种测试不要惊讶,你已经进行过某种程度的单元测试。你见过提交代码前不做测试的开发人员吗?在传统测试中,开发人员使用一个图形用户界面触发要测试的类的某个行为,然后检验结果。那什么是单元测试,什么不是单元测试呢?为什么不写单元测试不想做往往说不想的,其实是因为还不会。因为不会,所以想一想就很麻烦,还不如手工测试呢。...原创 2017-02-06 15:27:21 · 143 阅读 · 0 评论 -
mockto简单入门
一、什么是mock测试,什么是mock对象? 先来看看下面这个示例:从上图可以看出如果我们要对A进行测试,那么就要先把整个依赖树构建出来,也就是BCDE的实例。 一种替代方案就是使用mocks从图中可以清晰的看出mock对象就是在调试期间用来作为真实对象的替代品。mock测试就是在测试过程中,对那些不容易构建的对象用一个虚拟对象来代替测试的方法就叫moc...原创 2017-01-03 09:55:20 · 471 阅读 · 0 评论 -
代码坏味道
1、代码坏味道《重构-改善既有代码的设计》重复代码(Duplicated Code)Extract Class;Extract Medhod;Pull Up Method;Template Method 设计模式; 过长函数(Long Method)Extract MethodReplace Temp with QueryIntroduce Para...原创 2016-12-06 16:08:04 · 165 阅读 · 0 评论 -
浅谈代码重构
一、代码重构软件开发中,代码质量与其整洁度成正比,干净的代码,既在质量上可靠,也为后期维护、升级奠定了良好基础。实际开发中,我们经常听到”重构”二字。重构既不修正错误,又不增加新的功能性。反而它是用于提高代码的可读性或者改变代码内部结构与设计,并且移除死代码,使其在将来更容易被维护。关于重构说明,如下图所示:二、常用的重构方法1.封装成员变量(Encapsulate F...原创 2017-04-12 17:05:21 · 281 阅读 · 0 评论 -
测试驱动开发实践 - Test-Driven Development(转)
测试驱动开发实践 - Test-Driven Development(转)一.前言不知道大家有没听过“测试先行的开发”这一说法,作为一种开发实践,在过去进行开发时,一般是先开发用户界面或者是类,然后再在此基础上编写测试。但在TDD中,首先是进行测试用例的编写,然后再进行类或者用户界面的开发。由于要先开发测试用例,那么开发人员就必须清楚测试的目的,所测功能模块的业务逻辑以及需...原创 2016-09-06 10:25:04 · 250 阅读 · 0 评论 -
代码审查点
总体是否遵照编码规范是否有严重缺陷代码风格是否一致 注释所有方法是否都有注释注释是否清晰、易懂注释是否与代码保持一致方法内部复杂逻辑是否有注释 源代码质量方法名命名是否依照规则变量命名是否依照规则代码是否易懂设计是否合理...2016-08-04 08:59:02 · 144 阅读 · 0 评论 -
代码自动审查工具checkstyle,配合适应敏捷开发
参考官网教程:http://checkstyle.sourceforge.net/config_blocks.html;checkstyle是一个开发工具,帮助我们检查代码大部分不规范地方,提高检查效率,也节约大量人工审查成本,也可以支持开发自定义规则,适应项目的风格。兼容ide插件:eclipse,idea;文章主要介绍下checkstyle自定义规则的大概用法,checksty...2016-06-03 16:42:57 · 462 阅读 · 0 评论 -
代码自动审查工具
近期项目代码质量要求越来越高,目前还是采用传统的人工方式进行代码审查,审查的颗粒度主要代码的注释、代码命名、逻辑规范、类设计以及设计大量运算的程序等方面,这样耗费大量人力、物力,管理成本级高,再者由于开发相互之间大多数并不懂被检查的业务需求,导致效率偏低。 对于这种比较机械的管理,作为技术的程序员,第一感觉肯定是交给机器处理,由机器进行审查,也可...原创 2016-05-28 13:25:10 · 770 阅读 · 0 评论 -
checkstyle扩展检查模块,适应敏捷开发
checkstyle扩展 支持自己定义java代码进行个性化定制,适应项目的变化参考教程:http://checkstyle.sourceforge.net/extending.html;原创 2016-05-28 13:20:38 · 261 阅读 · 0 评论 -
IntelliJ IDEA 安装FindBugs以及应用
众所周知,项目越来越大,开发人员越来越多,我们的代码审查工作会变得越来越复杂,对代码质量控制难度也与日俱增,尽管经验丰富的程序员能审查能检查出大部分问题,但也得耗费巨大的人力成本,并且大多数大家工作都比较饱和,并不是每天都能坚持提交代码到GIT库前都能进行审查、 所以我们可以通过一些必要的检查工具来去发现程序潜在的bug,便于我们进一步定位,尽管工具的不能解决大部分问...原创 2016-05-25 16:19:30 · 478 阅读 · 0 评论 -
sonar禁用、启用规则
我们通过sonar进行代码扫描,发现很多规则扫描出来的严重问题(major级别),其实对项目影响并不是特别大,例如:tab空格代码对齐,在sonar认为tab字符不应该使用,但是我们有时候通过这种对齐能够使代码更美观、易读。 例如下图,是对一个的么项目进行扫描的结果: 在复杂度问题里面代码会发现很多对系统影响不大的问题,tab对齐空格:Tab...原创 2016-05-25 14:54:52 · 2608 阅读 · 0 评论 -
【转】我该如何写单元测试?
我该如何写单元测试? 在团队中,单元测试是较难推行的敏捷实践之一,我思考后觉得有以下原因:1、主观上觉得会加大工作量,影响进度;2、从未接触junit等单元测试框架,害怕接触新事物3、团队形式上要求、形式上开展,但是未能结合培训、Code Review等方式持续推行 其实单元测试是个相当简单的技术,当然,要做的完美也要花很多的心思。单元测试无非就是:AAA...原创 2017-02-06 15:29:17 · 154 阅读 · 0 评论