为了在部门内部推行code review这一活动,几个月之前开始寻找工具的支持,开始相中的是Jupiter这一eclipse插件,刚开始还写了一份user guide(见附件),但是后来我发现它比较笨拙,显著的缺点是每次review都要分reviewID,保存的数据格式是xml文件,总感觉不是很让人放心,另外跟公司内部的SCM结合的不是很好。当然它也有优点,比如跟eclipse结合的很好,查看源代码比较方便,而其它的个人评审和团队评审以及修复等等各种阶段性的活动也是一大亮点。
刚开始接触sonar时,让我眼前一亮,它的核心功能是整合PMD、checkstyle、Findbugs等等静态代码检查工具,生成各种数据报告,可以说是我目前为止见过最为强大的代码质量管理工具。由于自己负责的模块马上进入code review阶段,于是乎我就想藉此机会体验一下Sonar的手动代码审查功能。
首先,预览一下我的sonar的主界面:
关于Dashboard中的质量数据不是本文讨论的重点,如有机会我将会另开一文详细介绍。
点击上面的Violations,然后选中你要查看的java文件,会出现下面的界面(感觉有点隐蔽):
必须选中Violations,跟每一个Violations关联在一起,将鼠标移动到一条Violation上,会出现review的字样(有些因为浏览器的问题不会出现review字样,建议使用chrome浏览器):
也就是说如果没有Violation,就不会出现review的字样,如果review人员发现逻辑上的功能错误,就不知道在何处写上review意见了,这是Sonar的手动审查功能最大的弊病。
旁边的“Flag as false-positive”选项的意思是可以将当前Violation标记为误测,表示本来是没有问题的,标记之后,当前Violation不会再在页面上出现(但是Violations数目不会及时更新),你可以按照下面的操作再次找到它:
另外,你可以在别人添加review之后可以追加自己的review信息:
感觉有点像论坛回复的味道呵,这样挺好的,能够在线下及时保存review人员的想法,让他们的想法尽可能的激烈碰撞。
还有一点不是很爽,就是在每次添加review的时候,Sonar都是默认将本次review分给了自己:
这个默认做的不是很好,因为每次review大多数的时候都是assign给同一个人,建议大家注意这点,不要本来分给别人的Violations却分给了自己。
最后,在团队评审的时候,可以到主页的reviews去查找:
Sonar默认显示open的reviews,而且只显示分配给了自己的reviews,如果要查看某个project的所有reviews,选择搜索条件即可:
总结
感觉Sonar的手动代码审查功能仅限于静态代码检查工具检测出来的Violations,而不是review人员自己添加一些reviews,但是我们应该看到的Sonar的优点,它的质量报告分析很强大,而且它也在不断发展中,我相信,Sonar在代码质量管理方面将是很多人一个不错的选择。
- 大小: 19.6 KB
- 大小: 23.5 KB
- 大小: 46.4 KB
- 大小: 158.5 KB
- 大小: 16.5 KB
- 大小: 15.7 KB
- 大小: 64.4 KB
- 大小: 79.7 KB
分享到:
相关推荐
Sonar 是一个用于代码质量管理的开源平台,用于管理源代码的质量,通 过 Eclipse 插件形式,可以支持包括 java, C#, C/C++, PL/SQL, Cobol, JS, Groovy 等等二十几种编程语言的代码质量管理与检测。
用sonar runner方式进行代码的监控!在命令行输入相应的命令。可输入相应的代码质量情况。
通过sonar扫描java代码,可以帮忙进行代码优化,一般在项目最后上线前都要求进行代码扫描,选用此扫描工具是一个不错的选择,压缩包里包含了sonarqube-5.6.7.zip,sonar-scanner-2.8.zip,Sonar代码扫描环境搭建.docx...
sonarLint 插件 供离线安装 ,用于检查代码 ,sonarLint 插件 ,用于检查代码 ,sonarLint 插件 ,用于检查代码 ,sonarLint 插件 ,用于检查代码
maven集成sonar5.6.7进行代码扫描所用的pom文件 maven集成sonar5.6.7进行代码扫描所用的pom文件 maven集成sonar5.6.7进行代码扫描所用的pom文件
sonar4版本扫描辅助程序. 向服务器上传代码并做扫描分析. 使用方式: CMD切换到项目根目录下(sonar-project.properties文件所在目录)运行 sonar-runner
maven集成sonar5.6.7进行代码扫描所用的pom文件,包含sonar服务器配置。 想更改上次上传的文件,可是改不了,就重新上传一个
sonar(SonarQube)是一个开源代码质量管理平台。它通过插件的形式来管理代码,它支持的语言包括:Java,PHP,C#,C等。 7个原则: 1. 不遵循代码标准 sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具...
利用java代码,调用sonar接口,实现在sonar里面创建,更改,用户,组,权限等一系列操作
SonarLint 代码检查工具,IDEA 插件。
sonar+Jenkins 构建代码质量自动化分析平台 Sonar 是一个用于管理代码质量的开源工具,可以分析代码中的bug和漏洞以及Code Smells,支持20多种编程语言的检测,如java,c/c++,python,php等语言,当前有超过85000家...
最新版本SonarLint-3.4.2.2586版本。IntelliJ 3.4.1和3.4.2版本也能用。
Sonarqube+SonarLint代码净化解决方案 ppt。有关代码净化给大家做讲解的ppt。
经过几个日夜的奋斗,在linux上总结出jenkins集成sonar的文档,过程中遇到过各种坑。
The idea is to visualize Android Lint errors directly in Sonar. Usage Most Android projects are compiled with Gradle, so if this is the case use the SonarQube Scanner for Gradle to analyse your ...
sonar 是一个代码静态坚持工具网站,可以集成PMD,findbugs等静态坚持工具。
SonarQube分析移动端Kotiln语言项目,遵循的基本内置规则;规则为常用激活规则,含bug、漏洞、坏味道三方面不同程度(严重、阻断、主要、次要、提示等级别)。
Sonar代码质量监控培训PPT
SonarQube为静态代码检查工具,帮助检查代码缺陷,改善代码质量,提高开发速度