`
cantellow
  • 浏览: 847353 次
  • 性别: Icon_minigender_1
  • 来自: 草帽海贼团
社区版块
存档分类
最新评论

Sonar手动审查代码初体验

阅读更多

为了在部门内部推行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
4
2
分享到:
评论
4 楼 illu 2012-11-28  
请教楼主个问题,
向Jira在Assign Case的时候是可以进行邮件通知的。
我捣鼓了很长时间, 但是没有发现Sonar有这种功能。

你们是否有邮件通知?
3 楼 dxm1986 2012-06-06  
也就是说如果没有Violation,就不会出现review的字样,如果review人员发现逻辑上的功能错误,就不知道在何处写上review意见了,这是Sonar的手动审查功能最大的弊病。  


现在可以了。
2 楼 cantellow 2011-06-23  
chat 写道
git + gerrit

要想改变公司级别的SCM不是那么的容易,所以只能选择其他的方案。
1 楼 chat 2011-06-23  
git + gerrit

相关推荐

    SonarLint代码审查工具的安装与使用

    Sonar 是一个用于代码质量管理的开源平台,用于管理源代码的质量,通 过 Eclipse 插件形式,可以支持包括 java, C#, C/C++, PL/SQL, Cobol, JS, Groovy 等等二十几种编程语言的代码质量管理与检测。

    sonar runner 进行代码质量监控

    ### Sonar Runner 进行代码质量监控 #### 一、Sonar环境搭建 为了实现代码的质量监控,首先需要搭建Sonar环境。以下是详细的步骤: 1. **安装JDK-1.5以上版本**:Sonar需要Java环境支持,因此首先要确保安装了JDK...

    SonarLint IDEA代码检查工具最新

    SonarLint是一款强大的静态代码分析工具,它旨在帮助开发者在编码阶段就发现并修复代码中的潜在问题。这款工具与IntelliJ IDEA集成,为开发人员提供实时的代码质量反馈,从而提升代码质量和可维护性。SonarLint的...

    sonarqube,sonar-scanner代码扫描工具

    通过sonar扫描java代码,可以帮忙进行代码优化,一般在项目最后上线前都要求进行代码扫描,选用此扫描工具是一个不错的选择,压缩包里包含了sonarqube-5.6.7.zip,sonar-scanner-2.8.zip,Sonar代码扫描环境搭建.docx...

    Sonar-runner Sonar代码扫描辅助工具sonarScanner

    sonar4版本扫描辅助程序. 向服务器上传代码并做扫描分析. 使用方式: CMD切换到项目根目录下(sonar-project.properties文件所在目录)运行 sonar-runner

    Sonar代码规范

    sonar(SonarQube)是一个开源代码质量管理平台。它通过插件的形式来管理代码,它支持的语言包括:Java,PHP,C#,C等。 7个原则: 1. 不遵循代码标准 sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具...

    SonarLint idea代码检查工具 离线安装包

    sonarLint 插件 供离线安装 ,用于检查代码 ,sonarLint 插件 ,用于检查代码 ,sonarLint 插件 ,用于检查代码 ,sonarLint 插件 ,用于检查代码

    maven集成sonar5.6.7进行代码扫描所用的pom文件

    maven集成sonar5.6.7进行代码扫描所用的pom文件 maven集成sonar5.6.7进行代码扫描所用的pom文件 maven集成sonar5.6.7进行代码扫描所用的pom文件

    jenkins持续集成sonar扫描代码

    - 可以通过手动触发、定时触发或通过 SCM 触发来启动 Jenkins 构建。 - 构建完成后,Jenkins 将自动上传分析结果到 SonarQube 服务器。 通过上述步骤,可以实现在持续集成过程中自动进行代码质量分析,帮助团队...

    java代码集成sonar接口,实现sonar操作的demo

    利用java代码,调用sonar接口,实现在sonar里面创建,更改,用户,组,权限等一系列操作

    Sonarqube+SonarLint代码净化解决方案

    Sonarqube+SonarLint代码净化解决方案 ppt。有关代码净化给大家做讲解的ppt。

    maven集成sonar5.6.7进行代码扫描所用的pom文件,包含sonar服务器配置

    maven集成sonar5.6.7进行代码扫描所用的pom文件,包含sonar服务器配置。 想更改上次上传的文件,可是改不了,就重新上传一个

    sonar-Kotlin检查规则指南.docx

    Sonar-Kotlin 是一个功能强大的代码分析工具,它可以帮助开发者编写高质量的代码,并减少代码中的缺陷和问题。 知识点: 1. Sonar-Kotlin 是 SonarQube 的一个插件,用于分析 Kotlin 语言项目。 2. Sonar-Kotlin ...

    代码检测插件(SonarLint插件)安装使用说明.docx

    2. 打开Java或JavaScript文件,SonarLint将自动进行代码审查,并在控制台显示审查结果。 默认情况下,SonarLint会在文件打开时自动审查。若要关闭自动审查,可以在项目属性中取消勾选`Run SonarLint automatically`...

    Sonar的配置与安装

    Sonar 是一款功能强大的代码检查工具,能够对代码进行静态分析,检测代码中存在的缺陷和问题。Sonar 的配置和安装是使用 Sonar 的前提,下面将详细介绍 Sonar 的安装和配置过程。 Sonar 简介 Sonar 是一个开源的...

    SonarLint 代码检查工具

    SonarLint 代码检查工具,IDEA 插件。

    SonarLint代码质量检查工具

    SonarLint是一款强大的代码质量检查工具,它与SonarQube平台相辅相成,致力于提升软件开发过程中的代码质量。SonarQube是一个开源的平台,主要目标是进行源代码分析,检测潜在的代码缺陷、漏洞和代码异味,从而帮助...

    使用jenkins+sonar进行代码扫描,并发送自定义邮件.docx

    【使用Jenkins+Sonar进行代码扫描并发送自定义邮件】是软件开发中自动化质量管理和持续集成的一个重要实践。这个过程通常包括以下步骤: 1. **Jenkins架构**: - **Master节点**:主要负责任务调度,不直接执行...

    sonar+Jenkins 构建代码质量自动化分析平台.doc

    Sonar和Jenkins结合构建代码质量自动化分析平台是一种常见的DevOps实践,旨在提高软件开发的质量和效率。Sonar是一款强大的开源代码质量管理工具,它能够自动分析代码中的缺陷、漏洞和不良编码习惯,支持多种编程...

Global site tag (gtag.js) - Google Analytics